[英]Processing command line arguments for a code in c++ for random and user input
我們的講師要求我們通過以下方式將數據輸入代碼:
1.Random mode Run with graphs generated by random number generator. The command line for this mode is: $ mst –rnd // run in a random connected graph with n vertices and d% of density. // See Performance measurements section for details. 2.User Input mode $mst -s file-name // read the input from a file 'file-name' for simple scheme $mst -f file-name // read the input from a file 'file-name' for f-heap scheme
目前,我已經編寫了代碼,並使用g ++對其進行了編譯:
g++ -o mst.o mst.cpp
我從這樣的文件中獲取輸入:
./mst.o < data.txt
但是,我不知道如何滿足上述要求。
一個應用程序從main開始是這樣的:
int main(int argc, char* argv[])
這些是命令行參數。
您可以根據需要將它們打印出來:
int main(int argc, char* argv[])
{
std::cout << "Application: " << argv[0] << "\n";
for(int loop =1 ;loop < argc; ++loop)
{
std::cout << "\tArg: " << loop << " Value: " << argv[loop] << "\n";
}
}
您需要檢查argc
和argv
參數,以main
。 如果argv
足夠大,請檢查argv[1]
以查看它是否是您需要處理的開關之一。 如果是,則解碼另一個argv
以獲取所需的數字或文件名。 argv[0]
通常是可執行文件的名稱,不使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.