main () 是使用自动变量创建的,如果是这样,它的目的是什么?
is main () created with an automatic variable, and if so, what's its purpose?
我正在阅读函数调用堆栈部分中的教科书,并遇到了这个:
激活记录告诉 main 如何返回到操作系统(即转移到返回地址 R1),并包含 main 的自动变量(即 a,初始化为 10)的空间
这对我来说是新闻,所以我的问题是:
- 是否创建了自动变量?
- 它的目的是什么?
- 它的价值总是一样吗?
提前致谢
这段话指的是教科书中的一个示例程序。在该示例程序中,声明了一个名为 a
的自动变量并将其初始化为 10。
示例程序可能如下所示:
int main () {
int a = 10;
return 42;
}
是否创建了自动变量?
仅当您声明一个时。
它的目的是什么?
这段话描述了你在程序中使用的普通自动变量,用于你自己的目的。
它的价值总是一样吗?
不。
相关文章:
- int数据类型的指针指向的是什么,如果是一个类的私有数据成员,我们创建了该类的两个对象?
- 如果 KEY 是 std::list 或 std::vector 而不是值,那么 std::map 的默认行为是什么?
- 如果在双引号末尾传递逗号(,),"cout"的行为是什么?
- 是否可以将要"ShellExecute"的文件包含在 dll 中?如果是这样,"ShellExecute"中的文件位置应该是什么?
- 如果绝对没有调用成员函数,是否允许使用不完整类型的向量?如果是这样,从什么时候开始
- 如果我获得Integer和Double的产品,输出的数据类型是什么
- 在发布模式下崩溃,但如果可调试为 true - 不是..什么是可能的问题
- 如果默认构造函数不执行任何操作,则目的是什么
- 一个倒梯形,但如果输入高度对于宽度来说太大,那么它应该报告,不可能("不可能的形状"是什么)
- C 如果该代码中的错误是什么
- 如果 std::addressof 是 &.什么是 *& 的可读版本?
- 如果这些 { } 只是在代码中间,它们是什么意思?被忽略了
- 如果我们可以使用 vector[1] = someInt,emplace() 的目的是什么
- 如果私有虚拟函数被覆盖为派生类中的公共函数,那么问题是什么
- 如果您不编写 Web 应用程序,并且您的客户端不是浏览器,那么 Web 套接字相对于常规套接字的优势是什么?
- 如果它不是函数指针,那是什么?
- 正在(在构造函数中)将其包含一个不良设计的指针传递,如果是的,则解决方案是什么
- 如果我创建一个修改值的迭代器,静态成员"reference"应该是什么类型?
- 此(C )代码有什么问题吗?如果是这样,有人可以告诉我我在哪里出错
- 指针初始化无效?如果不是,那是什么