如何正确使用system()在C ++中执行命令?

我是Windows下的C ++编程新手。 我试图执行一个命令说cuobjdump在C ++代码中使用system()函数:

system("C:program filesnvidia gpu computing...cuobjdump.exe --dump-cubin C:..input.exe");

输出:

Usage  : cuobjdump [options] <file>

随后是cuobjdump的选项列表。

当我执行这个程序时,我总是得到命令行中显示的cuobjdump帮助选项。 就好像系统调用不解析文件名一样。 我究竟做错了什么? 我在使用createprocess时得到相同的结果。 选项--dump-cubin给出了一个错误,就好像我打错了一样。


试一试(也就是说,围绕着cuobjdump.exe路径" ,在C ++中正确转义为" ):

system(""C:program filesnvidia gpu computing...cuobjdump.exe" --dump-cubin C:..input.exe");

system("cuobjdump --dump-cubin pathfilename.exe");

f被编译器解释为一个字符串转义序列,请尝试pathfilename.exe


最明显的是, 是C / C ++字符串中的一个转义字符,所以如果你想直接使用它,它必须加倍。

system("cuobjdump --dump-cubin pathfilename.exe");
链接地址: http://www.djcxy.com/p/74849.html

上一篇: How to properly use system() to execute a command in C++?

下一篇: Bash input/output in C++