那c编个程序,要调用system,所以要两个双引号system(“.....”),里面是一个复制命令,copy .... ....,结果其中一个文件名有空格,我也得加双引号,这样就有两对双引号了,system("copy c:\\"music instrument" d:\\abc"),于是就编译失败,我该怎么办?
可以用两种办法解决这个问题:
①先把copy命令里的字符串构建好,再用strcat()或者sprintf()构建system()命令。
②采用sprintf(),用%c把双引号的ASCII码打印出来。结果字符串作为system()的参数。追问
①先把copy命令里的字符串构建好,再用strcat()或者sprintf()构建system()命令。
②采用sprintf(),用%c把双引号的ASCII码打印出来。结果字符串作为system()的参数。追问
能举个例子吗
追答char cmdstr[128];
sprintf(cmdstr, "copy %c ...", '"', ...);
system(cmdstr);
上面看起来是连续引号的是:' " ',把双引号用2个单引号括起来
温馨提示:答案为网友推荐,仅供参考