繁体   English   中英

C中主函数的调用约定是什么?

[英]What is the calling convention for the main function in C?

C中的每个函数都必须有一个调用约定,但是main函数的调用约定是什么(我认为这是cdecl调用约定,但我不确定)?

这取决于架构和平台。 许多x86 C运行时规范要求main为cdecl ,但绝不保证。

最重要的是,您不会在C标准中找到此信息,因为该语言不依赖于任何一种体系结构。 阅读您感兴趣的特定编译器的文档可能会更幸运。

C语言没有定义调用约定,但处理器架构和开发平台确实如此。 对于X86调用约定,请查看wiki https://en.wikipedia.org/wiki/X86_calling_conventions

另请参阅以下链接中的ARM调用约定http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042f/IHI0042F_aapcs.pdf

有关调用约定的更多信息,请参阅下面的wiki链接https://en.wikipedia.org/wiki/Calling_convention

另外,在GCC MIPS-32调用约定/堆栈帧定义中检查有关MIPS调用约定的讨论

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM