OS:Windows
IDE:VC++6.0
System函數大多情況下都是如下的應用的
OS:Windows
IDE:VC++6.0
System函數大多情況下都是如下的應用的
這樣寫都沒有問題。
我在用system函數調用帶參數的批處理的時候
當參數是字符串並且該字符串含有空格的時候
例如 在cmd命令行下:運行run.bat "C:/Program Files/1.txt" "D:/Test"
的時候可以正常運行,但是如果用程序寫如下的代碼時就會出錯:
如果是這樣,調用cmd命令就會出錯,具體出什麼錯誤根據run.bat的內容
在cmd當中是把C:/Program Files/1.txt拆看成2個參數了
顯然這個不是我們想要的
如果讓能正確的調用了?
是在command這個命令再加一對引號就可以了
所以上述兩個例子可以改成:
char* command = "/"run.bat /"C:/Program Files/1.txt/" /"D:/Test/"/""; system(command);
雖然這樣寫麻煩了些,但是這可以很好的處理cmd命令中那些需要參數 有關的引號的亂七八糟的問題
cmd命令行下切換目錄的方法 以window7來作示範 打開cmd的命令行 此時默認的地址是C盤 如果我們要訪問F盤,只需要輸入F: 如下圖,盤符已經更改 如果我們要進入一個具體的文件
一個細節: 1. C語言中的 char c = getchar(); 可以用於接收換行,即 '\n',如利用語句 if(c == '\n') ... 則可以是否輸入了回車符 2.C++中若定