初学者关于指针与数组中指针变量的问题
#include <stdio.h>#include <stdlib.h>
int main(void)
{
int a[5], *p = a, i; /*此处对p进行了初始化*/
for (i = 0; i < 5; i++)
{
*p = i; /*这里就是使用指针来给数组a进行赋值吗?比如p指针开始指向a[0],p+1之后指向a[1],,以此类推,到循环执行结束指针p指向数组a的最后一个元素,但是数组a尚未有值,只是将指针与数组a的对应关系明确了,对吗?*/
p++;
}
p = a; /*这里的不是在最上面就初始化过了吗,为什么在这里还要对其赋值呢?我试着将其删掉,但是显示的是一些奇怪的数,这是为什么呢?*/
for (i = 0; i < 5; i++, p++)
printf("%d\n", *p);
return 0;
}