gpt4 book ai didi

c++ - 从 Stdin 读取文本文件

转载 作者:行者123 更新时间:2023-11-28 03:21:05 25 4
gpt4 key购买 nike

我想看看从包含信息的文本文件中读取输入的最简单方法是什么:

7
12
v1-v2 7
v1-v3 11
v1-v4 1
v2-v4 12
v2-v5 5
v3-v4 8
v3-v6 10
v4-v5 6
v4-v6 3
v4-v7 4
v5-v7 9
v6-v7 2

通常这应该非常简单,但我需要考虑前两行,其中包含所需的 2 个不同数字。

到目前为止我已经设置:

int nodes;
int lines;
string line;

int count=0;

while(cin) {
getline(cin, line);

for(int i = 0; i < line.length(); i++) {
if(count >2)
break;

if(! (s[i] >= '0' && s[i] <= '9')
break;
else if(count=0) {
nodes = s[i]-'0';
}
else
lines = s[i]-'0';

count++;
}

//Space for code to account for other lines

}

所以这是一个关于获取前 2 个数字的方法,但我相信应该有更简单的方法来做到这一点。任何建议或是否有人可以指出我正确的方向

最佳答案

为什么不读入循环前的两个数字:

cin >> nodes >> lines;

如果输入中没有任何内容,变量将被设置为 0。

如果你需要以更好的方式处理这个问题,你可以做类似的事情:

if (cin) cin >> nodes;
else { /* handle error situation */ }

if (cin) cin >> lines;
else { /* handle error situation */ }

关于c++ - 从 Stdin 读取文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15414567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com