Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ minGW-CPP-G++;正确的编译命令_C++_G++ - Fatal编程技术网

C++ minGW-CPP-G++;正确的编译命令

C++ minGW-CPP-G++;正确的编译命令,c++,g++,C++,G++,我安装了以下软件: MINGW32_NT-6.1 i686 Msys 我正在使用命令行。 编写了“典型的”HelloWorld.cpp程序 如果我编译时使用:cpp HelloWorld.cpp-o HelloWorld.execompile是好的。(18k) 但执行失败:16位MS-DOS子系统。NTVDM CPU错误 如果我编译时使用:g++HelloWorld.cpp-o HelloWorld.execompile很好。(48k) 执行力很好 我无法确定执行编译的最佳方式以及方法之间的区别

我安装了以下软件: MINGW32_NT-6.1 i686 Msys

我正在使用命令行。 编写了“典型的”HelloWorld.cpp程序

如果我编译时使用:
cpp HelloWorld.cpp-o HelloWorld.exe
compile是好的。(18k) 但执行失败:16位MS-DOS子系统。NTVDM CPU错误

如果我编译时使用:
g++HelloWorld.cpp-o HelloWorld.exe
compile很好。(48k) 执行力很好

我无法确定执行编译的最佳方式以及方法之间的区别。有什么建议吗?还是好的推荐人? 谢谢。

“cpp”是“C预处理器”,而不是编译器。所以你只是在HelloWorld.exe中发现了一些奇怪的东西

执行“typehelloworld.exe”并查看它给出了什么。它甚至不应该是二进制文件——只是一个长文本文件,替换了所有的“#includes”和“#defines”


对于您的问题,第二种方法是“正确的”,因为您实际上调用了编译器/链接器并生成了一个有效的可执行文件。第一个“方式”是有效的命令,但它几乎与编译和链接无关。

当一个选项编译并运行而另一个选项未编译时,您无法确定执行编译的最佳方式?考虑到这些选择…非常感谢您的帮助!!您的简单但信息丰富的消息解决了我的所有问题,应用程序正在按预期运行!!很乐意帮忙。当你开始使用一些新工具时,总会有这样的麻烦。顺便说一句,如果答案是好的,你可以用选票下面的按钮接受它。