哪位能告诉我,c++怎么输入整行数据(包括空行)???

有一道题要求回文子串,但是有一组输入数据里有空行。哪位能告诉我c++怎么读入包括空行的数据???

附:
中文版题目:http://www.nocow.cn/index.php/Translate:USACO/calfflac
英文版题目:http://ace.delos.com/usacoprob2?a=8ihl9lCuHj5&S=calfflac
不好意思,我没说清楚
样例数据有一个是一个完整的c++程序,中间带空行
我需要:当遇到一个空行时不会结束,继续往下读,并保留这个空行。
也就是说,如果把我读入的东西输出,与所给输入应该是完全一样的
题目没给结束条件
比如:
input:
abcdefg

gfed
13246864
output:
defg

gfed
附:我比较习惯用char数组。当然,如果不行用string也可以

输入整行,用 getline,读到 char 数组 里。
例如:
#include<iostream>
#include<fstream>
using namespace std;

void main()
{
fstream fp;
char cc[80];
fp.open ("calfflac.in", fstream::in);
do {
fp.getline(cc,80); // 输入整行
cout << cc << endl; // 屏幕输出整行
}
while ( ! fp.eof());
}
================================
如果回文不是只考虑1行,而是多行,而你喜欢用 string 类,而不是 char[]. 你也可以 一个 string 一个 string 地读,自动跳过 空白和空行:
#include<iostream>
#include<fstream>
#include <string>
using namespace std;

void main()
{
fstream fp;
string s;
fp.open ("calfflac.in", fstream::in);
do {
fp >> s; // 输入 一个 string
// 这里加处理
cout << s <<endl; // 屏幕输出 一个 string
} while ( ! fp.eof());
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-27
cin.getline(str,80,'\n');
如果没有回车,就读取80个字符。遇到回车就结束。
空行就是一个回车了,它就跳过这行
第2个回答  2010-11-07
#inclue(string)
string 用getline(cin,string)
注意。getline会保留第一换行符
相似回答