2013-10-17 71 views
0

作業的一部分要求我在調用要通過終端運行的程序時定義輸入文件名,到目前爲止,我的程序已經實現了在打開文件後爲用戶輸入文件名,但在包含0或1輸入的標誌?如何通過終端執行程序時將用戶輸入計算機?

想法

終端:./test.exe -filename- -flag-

回答

1

可以通過聲明你的main像這樣

int main(int argc, char* argv[]) 

argv做到這一點是C的數組樣式字符串和argcargv中的多少個c樣式字符串。 他們一起給你的程序的命令行參數

你可以試試這個代碼爲例

#include <iostream> 

int main(int argc, char* argv[]) { 
    std::cout << "Have " << argc << " arguments:" << std::endl; 
    for (int i = 0; i < argc; ++i) { 
     std::cout << argv[i] << std::endl; 
    } 
} 

然後運行程序,當你調用它像這樣Example.exe "./test.txt" 0將輸出

Have 3 arguments: 
Example.exe 
./test.txt 
0 
+0

謝謝!使用for循環測試它並輸入不同的值之後,它非常直觀,它變得清晰:) – SxMZ

相關問題