gpt4 book ai didi

c - C 程序是否需要 main()?

转载 作者:太空狗 更新时间:2023-10-29 16:19:51 25 4
gpt4 key购买 nike

好吧,标题说明了一切。 main() 函数对于 C 程序来说是绝对必要的吗?

我问这个是因为我正在查看 Linux 内核代码,但没有看到 main() 函数。

最佳答案

不,ISO C 标准声明只有托管环境(例如具有底层操作系统的环境)才需要 main 函数。

对于像嵌入式系统(或操作系统本身)这样的独立环境,它是实现定义的。来自 C99 5.1.2:

Two execution environments are defined: freestanding and hosted. In both cases, program startup occurs when a designated C function is called by the execution environment.

In a freestanding environment (in which C program execution may take place without any benefit of an operating system), the name and type of the function called at program startup are implementation-defined.

至于Linux本身是如何启动的,Linux内核的启动点是start_kernel。不过,要更完整地了解整个引导过程,您应该开始 here .

关于c - C 程序是否需要 main()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4113731/

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