我认为对指针应该重新赋值 请大家来看看
请看下面的程序
#include <stdio.h>
void main()
{
int a[10],*p=a,i;
printf("input 10 numbers:");
for(i=0;i<10;i++)
scanf("%d",p+i);
printf("a[10]:");
for(i=0;i<10;i++)
printf("%d",*(p+i));
printf("\n");
}
我认为在第一个循环结束后,应该对指针变量重新赋值(P=a;)
因为在第一个循环结束后,指针变量P是指向&a[9]的。
但是,这程序是编译成果的。
我在中间加了p=a ; 语句,也编译成功。
我不知道为什么,请各位指教。