gpt4 book ai didi

c - main() 是否可以接受任何其他参数?

转载 作者:太空狗 更新时间:2023-10-29 15:23:58 25 4
gpt4 key购买 nike

我最近在搜索 C 环境变量时遇到了以下问题:

int main (int argc, char *argv[], *char *envp[])

我四处搜索,找不到关于我的问题的任何结论。

main() 可以接受的所有可用参数是什么?

最佳答案

C99 和 C11 草案标准允许为 main 实现定义的参数集,这些参数将特定于那些系统(不可移植)。来自 5.1.2.2.1 部分:

[...]or in some other implementation-defined manner[...]

我能找到的唯一附加参数是 envpapple,我们可以在 Wikipedia's C and C++ section on Entry Points 中找到很好的描述:

Other platform-dependent formats are also allowed by the C and C++ standards, except that in C++ the return type must always be int;[6] for example, Unix (though not POSIX.1) and Microsoft Windows have a third argument giving the program's environment, otherwise accessible through getenv in stdlib.h:

int main(int argc, char **argv, char **envp);

Mac OS X and Darwin have a fourth parameter containing arbitrary OS-supplied information, such as the path to the executing binary:[7]

int main(int argc, char **argv, char **envp, char **apple);

看起来 Windows 有一个 Microsoft specific wmain这需要 wchar_t:

int wmain(int argc, wchar_t *argv[], wchar_t *envp[]);

关于c - main() 是否可以接受任何其他参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29909115/

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