标签: c pointers
我最近开始学习ANSI C.我遇到过这个问题:
int a[7]; *(a+2);
我不明白如何将{2}添加到a。它是否为a中的每个元素添加了2?
a
另外,*的功能是什么?它会创建指针吗?
*
答案 0 :(得分:2)
a+2会导致a被解释为指向a第一个元素的指针。这称为array decaying。
a+2
它然后通过2和dereferences(*)将指针偏移到指针。所以它与a[2]相同。
2
a[2]