gpt4 book ai didi

c - 为什么 2[a] 在 C 中只声明 int a[3] 就可以通过编译

转载 作者:行者123 更新时间:2023-12-02 05:29:08 25 4
gpt4 key购买 nike

为什么2[a]在C中只声明int a[3]就可以编译

 1  #include <stdio.h>
2
3 int main(int argc, char **argv)
4 {
5 int a[3] = {1, 2, 3};
6 printf("a[2] is: %d\n", a[2]);
7 printf("2[a] is: %d\n", 2[a]);
8
9 return 0;
10 }

而且输出都是3,怎么解释呢?

最佳答案

因为 a[2]只是 *(a+2) 的语法糖,与 *(2+a) 相同或 2[a] .

关于c - 为什么 2[a] 在 C 中只声明 int a[3] 就可以通过编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5738683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com