Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.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
在Windows上使用system()时出现问题 我有一个C++程序,它试图用两个参数调用可执行文件。代码在Mac上运行良好,但在Windows上有一些问题。我确信这个问题与参数中的空格有关,因为当我使用没有空格的路径时,它工作得很好_C++_Exe_Quotes - Fatal编程技术网

在Windows上使用system()时出现问题 我有一个C++程序,它试图用两个参数调用可执行文件。代码在Mac上运行良好,但在Windows上有一些问题。我确信这个问题与参数中的空格有关,因为当我使用没有空格的路径时,它工作得很好

在Windows上使用system()时出现问题 我有一个C++程序,它试图用两个参数调用可执行文件。代码在Mac上运行良好,但在Windows上有一些问题。我确信这个问题与参数中的空格有关,因为当我使用没有空格的路径时,它工作得很好,c++,exe,quotes,C++,Exe,Quotes,此外,我将要发送到system()中的内容打印出来,然后在命令行上运行打印输出,它工作正常,这是微不足道的 我这样调用:ret=system(cmd.c_str()) 如果我这样做:cout经过更多的研究,这个问题与Windows的愚蠢有关。系统调用删除了第一个和最后一个引号,因此我不得不将整个过程用另一组引号括起来……我在这里找到了解决方案:系统返回什么?如果-1由errno设置了什么错误?它不返回-1,我在那块代码之后有一个捕获,以查看ret是什么…它返回1。但是,我可以判断它是否正确运行,

此外,我将要发送到
system()
中的内容打印出来,然后在命令行上运行打印输出,它工作正常,这是微不足道的

我这样调用:
ret=system(cmd.c_str())


如果我这样做:
cout经过更多的研究,这个问题与Windows的愚蠢有关。系统调用删除了第一个和最后一个引号,因此我不得不将整个过程用另一组引号括起来……我在这里找到了解决方案:

系统返回什么?如果
-1
errno
设置了什么错误?它不返回-1,我在那块代码之后有一个捕获,以查看ret是什么…它返回1。但是,我可以判断它是否正确运行,因为某些_executable.exe将输出一个file.square文件
system()
返回
1
意味着它成功调用了您的程序,而程序本身失败了,退出代码
1
。我同意,奇怪。但我确信它是围绕着路径中的空间旋转的。删除它工作的空间,添加空间,然后它停止工作。工作的意思是,输出我要找的文件。
"C:\Program Files (x86)\MyProgram\some_executable.exe" "C:\Users\me\Desktop\files"