Arrays 如果数组名放在方括号中怎么办?
我看到了这样一段C代码:Arrays 如果数组名放在方括号中怎么办?,arrays,c,Arrays,C,我看到了这样一段C代码: int main() { static int a[] = {7,8,9}; printf("%d", 2[a] + a[2]);; return 0; } 这里的2[a]是什么意思?a[b]和b[a]在C中是100%等价的。你所拥有的是一种非常单一的书写方式a[2] 通过更完整的解释,数组下标表示法a[b]也100%等同于*(a+b),这可能会使其双向工作的原因更清楚。如果a和b是表达式,那么通常a[b]并不等同
int main()
{
static int a[] = {7,8,9};
printf("%d", 2[a] + a[2]);;
return 0;
}
这里的
2[a]
是什么意思?a[b]
和b[a]
在C中是100%等价的。你所拥有的是一种非常单一的书写方式a[2]
通过更完整的解释,数组下标表示法
a[b]
也100%等同于*(a+b)
,这可能会使其双向工作的原因更清楚。如果a和b是表达式,那么通常a[b]并不等同于b[a]。