#include<stdio.h>intmain(){int n =10;char*pc =(char*)&n;int*pi =&n;printf("%p\n",&n);printf("%p\n",pc);printf("%p\n",pc+1);//char*指针+1跳一个字节printf("%p\n",pi);printf("%p\n",pi+1);//int*指针+1跳4个字节}
指针的类型决定指针的步长
2.2 指针的解引用
intmain(){int a =0x11223344;int* pa =&a;*pa =0;char* pc =&a;*pc =0;//只改变第一字节的地址//不同指针访问的字节数不同,和空间不同return0;}
int*test(){int num =100;return#}//num在出函数范围时自动销毁释放,下面再去索引num是找得到的,但此时这个空间不属于该变量了intmain(){int* p =test();*p =200;return0;}intmain(){int a =10;int* pa =&a;//明确初始化//NULL-就是用于初始化指针的,本质为0int* p =NULL;return0;}
#include<stdio.h>intmain(){int arr[10]={0};int*p = arr;int i =0;for(i =0;i<=11;i++){*(p+i)= i;}return0;}