weixin_73000861 2022-08-15 19:28 采纳率: 97.9%
浏览 63
已结题

指针表示数组谁能详解一下?

int main(void)
{
int a[3] = {199 ,299 ,188};
int *p = a;
printf("%d", p[0]);
return 0;
}
这段代码是用指针表示数组,为什么能这样表示。int *p = a;用了这个之后为什么p就是一个数组了?

  • 写回答

4条回答 默认 最新

  • 无言1111 Java领域新星创作者 2022-08-15 19:31
    关注

    你的数组名a,其实是一个地址,他的结果是一个指针,指针类型是数组名的类型加*,所以指针式一个int*,第二行,int*p=a,也就顺理成章了。a是首个元素的地址,通过指针调用的,所以就变成第一个元素了。
    http://t.csdn.cn/ajNEh
    自己做的博客,超详解。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 8月23日
  • 已采纳回答 8月15日
  • 创建了问题 8月15日