章.北海
2021-07-22 23:33
采纳率: 33.3%
浏览 38

关于C语言调用函数时数组传参的疑惑

为什么调用函数时,传过去只有数组的首地址(看网课的),既然只是首地址,为什么在函数那里还能比较数组元素,函数那里是怎么得到数组内容的?
img

  • 收藏

3条回答 默认 最新

  • 不忹 2021-07-22 23:44
    已采纳

    数组的名称可以理解为一个指针常量,指针指向数组空间的第一个数据的地址。当函数调用的时候是值传递,相当于传入了一个指向数组第一个数据的指针。之后函数里面对数组的访问就和指针访问相同。

    已采纳该答案
    1 打赏 评论
  • 快乐鹦鹉 2021-07-23 08:36

    举个例子,地址就像一张纸条上写着你家住址一样,只要拿到这个纸条的,都能找到你家在哪里,不需要一定搬着你家房子满地跑

    1 打赏 评论
  • 广大菜鸟 2021-07-22 23:37

    int a[]数组是连续存放,然后a[i]=*(a+i),i代表指针需要移动次数

    打赏 评论

相关推荐 更多相似问题