无法理解编译器(gcc)如何解释命令(c)并给出语句的输出
有人能帮我吗,我不知道gcc是如何编译下面的语句并打印其输出的:-无法理解编译器(gcc)如何解释命令(c)并给出语句的输出,c,arrays,C,Arrays,有人能帮我吗,我不知道gcc是如何编译下面的语句并打印其输出的:- printf("%d",7["sunderban"]); C允许以两种方式访问阵列的元素(请参阅和答案): 因此,在您的例子中,您访问字符串的第8个元素,它被printf解释为int。Gcc将“sunderban”的基址加上7,并在该位置打印与“a”相当的十进制数据,即97。您正在询问该语句的输出,没有说明这个输出是什么,以及为什么它是你意想不到的。请改进你的问题。 int v[5]; // 1) v[2] = 33; //
printf("%d",7["sunderban"]);
C允许以两种方式访问阵列的元素(请参阅和答案):
因此,在您的例子中,您访问字符串的第8个元素,它被printf解释为int。Gcc将“sunderban”的基址加上7,并在该位置打印与“a”相当的十进制数据,即97。您正在询问该语句的输出,没有说明这个输出是什么,以及为什么它是你意想不到的。请改进你的问题。
int v[5];
// 1)
v[2] = 33;
// 2)
2[v] = 44;