指针加减法的要点
1. 指针加数字:
int arr[10]={1};
int *ip=arr;
ip++; //加一个整型单元格,因为是int型,所以加4个字节=sizeof(int)
double brr[10]={12.3}'
double *dp=brr;
dp++; //加一个double型单元格,8个字节=sizeof(double)
指针加法需要调整,调整的权重为sizeof(指针去掉*)
int *p=2000; //error 没有地址;
int *p=(int *p)2000; //ok P使用了2000这个值;
2. 指针减数字:
指针减法需要调整,调整的权重仍然为sizeof(指针去掉*)
3. 指针加指针
非法的,指针不可以加指针;
4. 指针减指针
合法的,表示间隔的单元个数
具体算法为:{ 第一步:算出间隔的字节数;
{ 第二步:除以调整的权重
第一个格子的地址保存100,倒数第二个格子保存132,从到p到q,中间间隔了八个格子,再除以调整的权重。