指针详注释一
#include <stdio.h>
void change(int);
int main()
{
/*
int a = 90;
change(&a);
printf("a=%d\n", a);
*/
// 变量类型 变量名;
// 格式:变量类型 *变量名;
// 定义了一个指针变量p
// 指针变量只能存储地址
// 指针就一个作用:能够根据一个地址值,访问对应的存储空间
// 指针变量p前面的int:指针变量p只能指向int类型的数据
int *p;
int a = 90;
// 指针变量p指向了变量a
p = &a;
*p = 10;
a = 20;
printf("%d\n", *p);
//printf("%d\n", a);
return 0;
}
void change(int n)
{
n = 10;
}
//指针例1
void change(int *n);
int main()
{
int a = 90;
change(&a);
printf("%d\n", a);
return 0;
}
void change(int *n)
{
*n = 10;
}
// 指针例2
#include <stdio.h>
int main()
{
/* 不建议的写法, int *p只能指向int类型的数据
int *p;
double d = 10.0;
p = &d;*/
/* 指针变量只能存储地址
int *p;
p = 200;
*/
/* 指针变量未经过初始化,不要拿来间接访问其他存储空间
int *p;
printf("%d\n", *p);
*/
int a = 10;
/*
int a;
a = 10;
*/
/*
int *p;
p = &a;
*/
// 定义变量时的*仅仅是一个象征,没有其他特殊含义
int *p = &a;
// 不正确的写法
// *p = &a;
p = &a;
// 这个时候的*的作用:访问指向变量p指向的存储空间
*p = 20;
char c = 'A';
char *cp = &c;
*cp = 'D';
printf("%c\n", c);
return 0;
}

浙公网安备 33010602011771号