指针草稿
指针 内存,以一个字节为单位来分配内存 每个字节的内存都有标号,这个标号就是指针 指针需要存储,32位的编译器用32位(4字节)存储此地址,64位的用64位的(8字节)存储此地址 编码:为每个物理存储单元(一个字节)分配一个号码 寻址:根据分配的号码找到相应的存储单元,完成数据读写 char:占一个字节,分配一个地址 int:占四个字节,分配四个地址 定义一个变量,在程序编译或运行时,系统给这个变量分配内存的单元,并且确定他的内存地址 指针是内存的单元的编号,指针变量是存放地址的变量;我们通常把指针变量和指针都叫做指针; int a = 10; int* p = &a; //取出a的地址,赋值给p printf("%p\n%p\n",p,&a); //%p是打印地址,以十六进制的方式 printf("结束"); //&a和p的值相同 int b = *p; printf("%d\n",b); //*p是访问p位置的值,这里打印出a的值10 *p = 200; printf("%d\n",b); //b的值是10 printf("%d\n",a); //a的值是200 int a =10;分配一个空间给a,a的地址编号是0X123456,把10存放到a的空间; int *p = &a;分配一个空间给p,把a的地址编号0x123456存放到p的空间; 野指针