在这个简单的 C 程序中,当我评论Line Y并保持Line X原样时,调用的f()输出输出0并Line B输出一些随机数。当我注释Line X和取消注释时Line Y,输出是一些随机数,Line B因为Line Y. 但是,当我评论Line Aand 时Line B,都调用f()output 0。有人可以向我解释为什么会这样吗?先感谢您。顺便说一下,我在gcc没有任何标志的情况下使用它并在 macOS Catalina 上运行它。
#include <stdio.h>
void f() {
int x;
printf("%d\n", x);
}
int main() {
f(); // Line X
int a; // Line A
printf("%d\n", a); // Line B
f(); // Line Y
return 0;
}
Run Code Online (Sandbox Code Playgroud) c ×1