C Pointer and Array
代码片段:
int a[5] = {1,2,3,4,5};
printf("%d\n%d\n",a[3],3[a]);
a[3] 的值居然和 3[a] 相同,都是4,真是不可思议,C 数组能这样定义?
谜底揭开:
在 C 语言中,a[i] = *(a+i)
所以,a[i] = *(a+i) = *(i+a) = i[a]
有趣哈 :D
参考:我在 CSDN 论坛上的提问
代码片段:
int a[5] = {1,2,3,4,5};
printf("%d\n%d\n",a[3],3[a]);
a[3] 的值居然和 3[a] 相同,都是4,真是不可思议,C 数组能这样定义?
谜底揭开:
在 C 语言中,a[i] = *(a+i)
所以,a[i] = *(a+i) = *(i+a) = i[a]
有趣哈 :D
参考:我在 CSDN 论坛上的提问