C语言 指针
指针 : 地址 的代名词 , 在32位系统中,指针就4个字节; 指针变量 : 存放指针这个概念的盒子 指针每次读取的数据大小,取决于定义指针的数据类型;(int *p ; char *p) #include "stdio.h" int a=0x213432; int *p1; void main() { p1=&a; printf("%x\n",*p1); }结果:213432 int a=0x213432; char *p1; void main() { p1=&a; printf("%x\n",*p1); }编译会出现警告warning: assignment from incompatible pointer type, 结果为32. 指针+修饰符 const 常量,只读【不能变】 char *p; const char *p; p可以指向任意空间,但不希望改变其中的内容(与char const *p相同 ) char * const p : p一旦被赋值,将永远指向这个地址,但内容可以改变(与 char *p const相同 ) 硬件资源 const char * const p : ROM volatile 防止优化指向内存地址 volatile char *p typedef 别名 指针+运算符 加减运算 指针的加法/减法运算,实际上是增加一个单位