数组与指针相关的改错问题,求解为什么要这样改
要求是输入数组中的所有元素。原题代码
程序代码:
#include "stdio.h"
main(){
int *p,i,a[10];
p=a;
for(i=0;i<10;i++)
*p++=i;
for(i=0;i<10;i++)
printf("a[%d]=%d\n",i,*p++);
}
改正后的代码:(求解为什么还要加一个p=a前面不是已经赋值了吗)
程序代码:
#include "stdio.h"
main(){
int *p,i,a[10];
p=a;
for(i=0;i<10;i++)
*p++=i;
p=a;//这里加一个p=a就正确了?
for(i=0;i<10;i++)
printf("a[%d]=%d\n",i,*p++);
}






