我已决定重新编程(特别是C++),为此我开始使用命令行解析器。最终目标是把它变成一个简单的类,我可以在未来的某些项目中导入它。C++程序将不会打印命令行参数
这个测试程序只是列出它收到的参数的数量,然后打印出来,每行一个,然后退出。
这里是我的代码:
#include <iostream>
#include <cstdlib>
using namespace std;
int main(int argc, char* argv[]){
cout << "Es gibt " << argc << " Argumente." << endl;
for(int i=0; i << argc; i++){
cout << "Argument " << i << ": " << argv[i] << endl;
}
return 0;
}
这里是在终端发生了什么:
[[email protected] cmdline-parser]$ g++ cmdline-parser-test.cpp -o parsetest
[[email protected] cmdline-parser]$ ./parsetest eins zwei
Es gibt 3 Argumente.
[[email protected] cmdline-parser]$
为什么它不打印的参数,因为它是咋办?它清楚地承认了这些论点,那么问题是什么?我相信我在这里错过了一些明显的东西。
将'i << argc'改为'i