项目场景:
数组a++与指针p++
问题描述:
数组a++:
虽然数组名是首地址
但是由于不能对数组名进行赋值运算
所以说a++这种和a=a+1等价的式子都会编译错误
要达到a++的效果应该写a+1
指针p++
int a[10];
int *p=a;
for(i=0;i<=9;i++){
printf("%d ",*(p+i));//如果不加*()直接写p+i表示的是地址
}
这里用指针来控制数组a就没问题,p++,p+i都是没有问题的
原因分析:
指针与数组的区别
解决方案:
1.不要写数组名++ 如:a++
2.可以写a+1,a+2.........
3.指针来控制数组a就没问题