jjzjj

c - 变量的值存储在 C 中的位置

在下面的代码段中:intfunc(){inta=7;returna;}可执行文件中存放数值7的代码段是什么?或者是在数据段还是在代码段?答案取决于操作系统还是编译器? 最佳答案 每个可执行格式都有一些部分。其中之一是text,包含汇编-二进制代码。其中之一是heap,其中可以找到malloc编辑的数据,而stack是存储局部变量的地方。还有其他几个,但现在无所谓了。以上三种随处可见。现在,像您的a这样的本地数据驻留在堆栈中。在可执行文件中,该值存储在text部分。我在你的代码中添加了一个main(返回0),用-g编译然后执行objd