有沒有一種真正有效的方法來處理C++中的命令行參數?在C++中解析命令行參數的有效方法是什麼?
我在下面做的事完全是業餘的,我無法想象這是命令行參數如何在專業軟件中真正處理(atoi,硬編碼argc檢查)。
// Command line usage: sum num1 num2 int main(int argc, char *argv[]) { if (argc < 3) { cout << "Usage: " << argv[0] << " num1 num2\n"; exit(1); }
int a = atoi(argv[1]); int b = atoi(argv[2]); int sum = a + b;
cout << "Sum: " << sum << "\n";
return 0; }
我認爲NUnit的源代碼(C#)具有命令行處理類的一個很好的例子.... [選項的 – 2010-09-30 00:35:32
可能重複解析器爲c/C++?](http://stackoverflow.com/questions/637371/option-parsers-for-cc) – wilhelmtell 2010-09-30 00:41:20
對於上面的例子,它是完美的。我不會做任何更復雜的事情。現在,如果你正在做一些像gcc那樣的有幾千個標誌的圖書館,那麼圖書館可能會很有用,但是如果需要另一個則完全取決於情況。 – 2010-09-30 02:26:45