在我的程序中,我应该逐行读取文本文件并搜索最长的回文并返回其行号。如何读取从.txt文件到char数组的空行
每个文本文件都长着的15
一个最大长度随着我的代码100,000行,我能看懂每一行到
char lines[100000][15]
除了其甩开空行我计算哪一行包含最长的回文。
例如包含文件:(0:是线0,1:第1行,等。)
0: hello
1: bob
2: joe
3:
4: cat
出来作为:
0: hello
1: bob
2: joe
3: cat
4: (whatever 5: would be)
这是我的代码用于读取文件:
std::ifstream theFile;
theFile.open(argv[1]);
char lines[100000][15];
for (int i = 0; i < 100000; i++)
{
for (int j = 0; j < 15; j++)
{
lines[i][j] = '\0'; //I do this to initialize each char to null
}
}
while (!theFile.eof())
{
for (int i = 0; i < 100000; i++)
{
theFile >> lines[i];
}
}
我假设的问题是与线:
theFile >> lines[i];
不复制换行符或其他格式化字符,但我不知道如何解决此问题,所以任何帮助,将不胜感激。
我必须使用char数组的数组,因为我使用MPI来传递数据,我只能发送字符而不是数组/字符串。
好吧,我这样做了,谢谢你的建议 – schwingms