我们可以使用wmain()函数与Unix编译器或者它会在\仅可在Windows?

有帮助吗?

解决方案

main的唯一标准签名是:

int main(void);
int main(int argc, char *argv[]);

然而,一个独立的实现可以提供扩展/允许其他签名。但是,这些并不存在保证可移植。 wmain看起来像一个Windows / VS事情。没有太多的机会,这将在* nix / GNU GCC工作。

其他提示

wmain签名在Windows中存在以处理宽字符命令行参数。一般情况下,而Windows的应用程序更喜欢UTF16,Unix应用程序更喜欢UTF8为Unicode字符串编码。 UTF8使用常规char字符串,所以标准main签名足够用于识别Unicode的Unix appications。

如果你想不需要Unicode的命令行参数,使用main便携式控制台应用程序。如果你需要的Unicode命令行参数,那么你需要预处理指令,使适合于各种环境中的签名。

如果你正在跨平台的GUI应用程序,使用一个特殊的框架,像QT。

wmain()是特定于Windows的。就像_tmain,如果该事项...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top