谁能解释一下下面给出的变量顺序

  • 本文关键字:顺序 变量 一下 能解释 c
  • 更新时间 :
  • 英文 :

#include<stdio.h>
int main(){
 int x=5;
 char A_one[8], A_two[8];
}

我认为 x 将位于更高的地址,然后是 A_two 和 A_one(递减(。

这没有定义,所以一般无法回答。

对于任何特定情况,您都可以通过打印地址轻松尝试:

printf("x is at %p, A_two at %p and A_one at %pn", (void *) &x,
       (void *) &A_two, (void *) &A_one);

请注意,例如,C 标准不要求将这些变量放在堆栈上。

最新更新