如何将不同长度的数据读取到 2D 数组中

how to read different length of data into 2d array?

本文关键字:读取 数据 2D 数组      更新时间:2023-10-16

作为标题,如何将不同长度的数据读取到二维数组中?我知道每行数据长度的上限。喜欢。。

5 6 9 8 4

5

4 9 5 6 5

1 2 3

4 5

我想将这些数据输入到二维数组的每一行中,但是 c++ 的 cin 将跳过输入"">

所以下面的方法不起作用

for(int i=0; i<m; i++)
{
 int ch=0;
 while( (cin >> ch)!='n' )
 {   
  element[i][ch] = true;
 }
}

那么,我该如何解决这个问题呢?或者,我如何区分""?让我的"同时"知道.非常感谢。

使用 std::getline() 将一行读入字符串。从中创建std::stringstream,然后将每个数字读入数组元素。

std::string line;
int row = 0;
while(std::getline(cin, line)) {
    std::stringstream linein(line);
    int num;
    int col = 0;
    while (linein >> num) {
        element[row][col++] = num;
    }
    row++;
}