*(a+2)和a[1]有什么关系?
我们有变量a,即类型char*,将chars存储在数组中。*(a + 2)和如何a[1]相关?
a[1]指向数组中的第二个元素,并*(a + 2)指向 指向的元素之后的第二个元素a。那么这两者的值会相同吗?
回答
这些是不一样的。
语法E1[E2]完全等同于*((E1) + (E2)). 所以*(a + 2)是一样的a[2]。现在应该清楚,这与a[1].
我们有变量a,即类型char*,将chars存储在数组中。*(a + 2)和如何a[1]相关?
a[1]指向数组中的第二个元素,并*(a + 2)指向 指向的元素之后的第二个元素a。那么这两者的值会相同吗?
这些是不一样的。
语法E1[E2]完全等同于*((E1) + (E2)). 所以*(a + 2)是一样的a[2]。现在应该清楚,这与a[1].