当我使用scanf()时,我需要知道从客户端获取多少参数。
例如,scanf("%d%d", &n1, &n2);
如果我不知道输入参数的确切数量怎么办?
在上面的例子中,当客户端输入一个无效的数字时,我可能会在不获取其余参数的情况下中断该过程。
如果你能推荐我用C / C ++中的其他一些函数来处理这个问题,那没关系。
答案 0 :(得分:1)
我在c ++中可以想到的最简单的事情:
std::vector<int> allParams;
int num;
while(std::cin >> num) {
allParams.push_back(num);
}
使用scanf()
:
std::vector<int> allParams;
int num;
while(scanf("%d", &num) != EOF) {
allParams.push_back(num);
}