我想读取2d数组中的文件。 文件基本上就是这样
abcedf
ghijkl
mnoqre
现在我知道文件的行,但是我不知道列,但列号对于所有行都是相同的。 现在,如果我这样做。
for (int i = 0; i < row_size; i++){
fin>>value;
row[i]=growfunction
}
使用此程序将继续将所有文件行添加到第一行,因为没有条件,因此我可以使其移至第二行。 我该怎么办?
谢谢您的时间。
答案 0 :(得分:1)
最好的方法是将整行直接读取为字符串,然后使用std :: strstream将该行的元素输入到数组中的各个值中。
#include <iostream>
#include <sstream>
int main(int argc, char* argv[]) {
std::string line;
while(std::getline(std::cin, line)) {
int rowSize = line.size();
char * row = new char[rowSize];
std::strringstream strm;
strm << line;
for (int i = 0; i < rowSize; ++i) {
strm >> row[i];
}
}
}