C++中getline()怎样设置循环终止条件

我在再写一个程序,用到getline()函数,ifstreaminfile("file.txt",ios_base::in);charm[100][100];charn[... 我在再写一个程序,用到getline()函数,
ifstream infile("file.txt",ios_base::in);
char m[100][100];
char n[100][100];
for(int i=0;循环条件;i++)
{
infile.getline(m[i],100,'x');
infile.getline(n[i],100,'+');
cout<<m[i]<<endl;
cout<<n[i]<<endl;
}

file.txt文件里的内容是:(多个一元多项式)
(1)39x23+2x3+6x1+100x0
(2)5x3+4x2+7x+1
(3) 3x4+6X2+7X5

我想能先读取第一个多项式后,中止循环,将里面内容放入一个单链表中;
再读取第二个,放入另一个单链表!
请问怎样设置循环终止条件?
我想知道怎样判断第一个多项式结束了!否则不知道什么时候开始读取和存贮第二个多项式了!!
展开
 我来答
潮范君
2016-01-05 · 知道合伙人软件行家
潮范君
知道合伙人软件行家
采纳数:1440 获赞数:2874
从事软件开发工作一年有余,主要C++方向。

向TA提问 私信TA
展开全部
//下面代码是在文件流中使用的.
ifstream infile("file.txt",ios_base::in);
string line;
while(getline(line,infile))    //这里读取失败会自动退出while循环
{
//这里的line就存放了了读取的一行的多项式
//然后在这里添加对line的处理函数即可,
//处理完以后,继续循环读取下一个多项式
//循环最终会在处理完所有的多项式后结束
}

读取一行就放到一个字符串中,再在字符串中提取系数和指数,这样就行了!

saimm99
2010-08-28 · TA获得超过122个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:109万
展开全部
geiline()是一直读到文件末尾,如果你想终止的话,可以用ctrl+z结束,感觉你的处理方式有问题。
其实你读入完一组之后就可以直接加在单链表里,没什么问题的。然后在读第二组,不用终止循环的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d837291
推荐于2016-05-03 · 超过16用户采纳过TA的回答
知道答主
回答量:30
采纳率:0%
帮助的人:47.9万
展开全部
ifstream infile("file.txt",ios_base::in);
string line;
while(getline(line,infile))
{
//这里的line就存放了了读取的一行的多项式
//然后在这里添加对line的处理函数即可,
//处理完以后,继续循环读取下一个多项式
//循环最终会在处理完所有的多项式后结束
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式