在我发现的许多代码示例中,如果必须将数组传递给函数,它们会使用“&Array[0]”。有什么理由这样做吗?他们可以简单地写成“Array”。
最佳答案
这是一个纯粹的风格问题,你应该按照你的开发团队喜欢的方式去做。我个人喜欢使用普通的 Array
,如果我想偏移 n
元素,我会使用 Array + n
。但有些人发现这令人困惑并使用 &Array[n]
,即使 n == 0
也是如此。
为另一方辩护,Array + n
语法要求您对 C 了解更多才能理解它。它涉及退化为指针的数组,以及指针算术。但在我看来,C 程序员无论如何都需要了解所有这些东西,它不是一门复杂的语言。
关于c - 传递数组第一个元素的地址时,为什么要写&Array[0]而不是Array?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22978019/