1、指针是和int char float一样的类型称为指针类型 用 *表示
2、指针变量,指针变量是什么类型的指针,就看它指向的变量是什么类型的
整型指针 int *
字符串 char *
浮点型指针 float *
3、注意:指针只能指向某块地址,不能指向一个常量值
例如 int *p = 10;这个就是错误的
&表示取地址,&a表示取a的地址
所以 int *p = &a;
4、指针变量在内存里占8个字节(64位的操作系统里)
5、*号的作用
1.定义一个指针变量
2.*(指针变量) == 获取指针指向的变量的值
例如 int a = 10;
int *p = &a;
*p = 10;
(*p)++ =a++ = 11;
*(p++) = *(p的下一个内存空间) = 讲p的下一个内训空间里的值当做一个地址,获取这个地址对应的值
6、常量指针
const int *pA = &a;
*pA = 20;不能改变指向的变量的值
pA = &b;可以改变指针的指向
7、指针常量
int *const pA = &a;
*pA = 20;可以改变指针指向的变量的值
pA = &b;不能改变指针的指向
8、指向常量的常量指针
const int *const pA = &a;
*pA = 20;
pA = &b;