gpt4 book ai didi

c++ - 为什么在c/c++中main函数首先运行?

转载 作者:行者123 更新时间:2023-11-30 19:54:53 24 4
gpt4 key购买 nike

为什么 main() 函数首先运行然后其他函数如果我们希望另一个函数先运行然后 main 函数在 c 或 c++ 中怎么办?谁能解释一下其背后的逻辑。谢谢。

最佳答案

因为这就是标准定义要使用的语言(此处引用 C++):

[basic.start.main]

A program shall contain a global function called main. Executing a program starts a main thread of execution (...) in which the main function is invoked (...)

因此,编译器必须以一种在操作系统启动程序时调用 main 的方式生成二进制文件,或者在独立环境中,在加载程序时调用 main

从技术上讲,它不必是生成的程序集中的第一个调用。编译器可以插入一些额外的启动代码(例如初始化变量等),这些代码本身可以分组为函数。这是 C++ 程序开发人员所关心的,但在嵌入式系统中变得非常重要,因为您需要/想要了解几乎每条执行的指令。

关于c++ - 为什么在c/c++中main函数首先运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52116975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com