永发信息网

c++内调用命令行 不支持中文路径

答案:2  悬赏:0  手机版
解决时间 2021-03-10 16:58
  • 提问者网友:我是女神我骄傲
  • 2021-03-09 17:31
我在c++程序中需要调用命令行执行某个exe程序,这个程序的完整路径如下:
c:\testing\中文目录\空格 目录\testing.exe
我已经在这个完整路径两端加上双引号再赋给system执行调用,但是发现失败。而如果直接从命令行输入完整的路径,是可以调用的。最后发现如果在c++程序中用这样的方法调用执行exe,是因为中文路径的原因导致的失败。想问问大家如何解决这个问题。
最佳答案
  • 五星知识达人网友:鱼芗
  • 2021-03-09 17:47
windows上你可以尝试使用_wsystem,传递宽字符路径。
比如
_wsystem(L"测试\\test.exe"); 不知道你在传递给system函数时,是否将路径的分隔符转义了?如果没有转义,肯定会出现问题。确保代码中的字符串是:
"\"c:\\testing\\中文目录\\空格 目录\\testing.exe\""
全部回答
  • 1楼网友:鱼忧
  • 2021-03-09 18:30

int main(int argc,int argv) 不能这样定义

argc为形参个数, argv为形参串 必须为指针数组   当然这2个形参名字可以随意起

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯