我目前正在开发 Windows 10 的控制台应用程序,并且想知道 main() 入口点应该是什么。
Jeffrey Richter 和 Christophe Nasarre 的“Windows via C/C++”(2007) 第 69 页中指出:
您的 Windows 应用程序必须具有入口点函数...作为 C/C++ 开发人员,您可以使用两种可能的入口点函数:
Run Code Online (Sandbox Code Playgroud)int WINAPI _tWinMain(HINSTANCE hInstanceExe, HINSTANCE, PTSTR pszCmdLine, int nCmdShow); int _tmain(int argv, TCHAR *argv[], TCHAR *envp[]);
本书接着指出,这两个入口点实际上由编译器映射到不同的入口点,具体取决于应用程序是 GUI 还是控制台以及是否使用 Unicode。
我想使用 Unicode 的 Win32 控制台应用程序使用正确的入口点,所以我假设(?),我想要 _tmain 版本,但是当我在 Visual Studio 2015 Community Edition 中打开一个新项目并选择“Win32 控制台应用程序”时”,然后选择“控制台应用程序”,我最终得到了 main() 就像我在 Linux 下习惯的那样:
int main()
Run Code Online (Sandbox Code Playgroud)
我应该使用哪个入口点?