指针值加1就是将指针值加上sizeof(指针所指变量的类型)

  1+1=2,那么指针加1是加上了1这个数字吗?试一下,在代码中定义了char数组,char也是整数,数组名是ac,ac中有10个元素,0-9,然后做了一个char *p=ac,定义了*p的一个指针,p指向了ac数组的第一个单元。然后分别输出p和p+1的值,结果是差了1:

 1 #include <stdio.h>
 2 
 3 int main(void){
 4     char ac[] = {0,1,2,3,4,5,6,7,8,9};
 5     char *p = ac;
 6     printf("p  =%p\n",p);   //输出p的值
 7     printf("p+1=%p\n",p+1); 
 8 
 9     return 0;
10 }
View Code

相关文章: