Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/125.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
g++;在Windows上不使用通配符文件名编译 在使用基于通配符的文件名时,突然间,我似乎在编译Windows程序命令行(特别是10)中的C++程序(特别是TDM64 5.1.0)。当完整给出名称时,它可以正常工作。我以前做过无数次,编辑没有问题,但在windows上不正常。。。我以前工作的记忆一定是假的。我错过了什么_C++_Compilation_G++_Wildcard_Tdm Mingw - Fatal编程技术网

g++;在Windows上不使用通配符文件名编译 在使用基于通配符的文件名时,突然间,我似乎在编译Windows程序命令行(特别是10)中的C++程序(特别是TDM64 5.1.0)。当完整给出名称时,它可以正常工作。我以前做过无数次,编辑没有问题,但在windows上不正常。。。我以前工作的记忆一定是假的。我错过了什么

g++;在Windows上不使用通配符文件名编译 在使用基于通配符的文件名时,突然间,我似乎在编译Windows程序命令行(特别是10)中的C++程序(特别是TDM64 5.1.0)。当完整给出名称时,它可以正常工作。我以前做过无数次,编辑没有问题,但在windows上不正常。。。我以前工作的记忆一定是假的。我错过了什么,c++,compilation,g++,wildcard,tdm-mingw,C++,Compilation,G++,Wildcard,Tdm Mingw,你的问题在于你在哪里写: g++是一个linux风格的程序,希望shell为其扩展通配符。windows命令shell并没有做到这一点——它希望各个程序自己扩展通配符 最简单的解决方案是下载cygwin,它确实为您扩展了通配符。否则,此问题的答案可能有用: 我注意到TDM基于GCC的MINGW端口。我发现这个编译器的不同版本实际上对通配符的处理是不同的。例如,从3.4.2版开始,在Windows 7中编译时,它对我来说工作得非常好: 但是,当我升级到GCC v.4.9.2时,这个批处理文件和我

你的问题在于你在哪里写:

g++
是一个linux风格的程序,希望shell为其扩展通配符。windows命令shell并没有做到这一点——它希望各个程序自己扩展通配符

最简单的解决方案是下载cygwin,它确实为您扩展了通配符。否则,此问题的答案可能有用:


我注意到TDM基于GCC的MINGW端口。我发现这个编译器的不同版本实际上对通配符的处理是不同的。例如,从3.4.2版开始,在Windows 7中编译时,它对我来说工作得非常好:


但是,当我升级到GCC v.4.9.2时,这个批处理文件和我使用的其他批处理文件都坏了(特别是,*.cpp无法识别)。这是Dev-C++IDE附带的mingwgcc版本。因为我非常需要这个特性(具体来说,就是用未指定的随机文件名测试编译大量提交的学生代码),我实际上不得不降级并恢复到旧版本

请不要发布屏幕截图:您可以将其作为引用的纯文本(每行以“>”和五个空格开头),这样可读性会更好@MartinBonner好的,我已按要求将其切换为纯文本。我不认为这是您的内存故障。我刚刚升级了GCC的版本(当前版本4.9.2),我必须更改一个以前成功使用*.cpp的Windows批处理文件,现在无法工作,除非我用特定的文件名替换它。啊,我看到我通常使用Linux,一定是在Windows上创建了错误的内存。我想MSYS也会为我处理这个问题。。。这就解释了为什么我发誓它能在更早的时候工作。
g++*.cpp
在windows 10中使用mingw-w64(mingw builds edition 4.9.2)命令prompt对我来说非常好。我还编译了学生提交的未知文件名。
C:\Users\Duncan Coulter\Code>dir *.cpp
 Volume in drive C has no label.
 Volume Serial Number is 9EE6-DBBD

 Directory of C:\Users\Duncan Coulter\Code

2016/04/04  01:35 PM             7 869 LittleMan.cpp
2016/04/04  01:35 PM             1 912 main.cpp
               2 File(s)          9 781 bytes
               0 Dir(s)  90 288 394 240 bytes free

C:\Users\Duncan Coulter\Code>g++ *.cpp
g++: error: *.cpp: Invalid argument

C:\Users\Duncan Coulter\Code>g++ main.cpp LittleMan.cpp
g++ *.cpp