for(int i=1;i<=n;i++)
{
getline(cin,line);
for(int j=1;j<=n;j++)
demo[i][j]=line[j-1];
}
实例代码如上,每次我在写代码的时候,总是需要读取一整行的输入,那就需要使用到getline函数,但是总会发现会少读一行。我还没有找到原因,但是我猜测是由于输入缓冲区的原因。所以遇到这个问题要怎么办呢?
cin.ignore();
for(int i=1;i<=n;i++)
{
getline(cin,line);
for(int j=1;j<=n;j++)
demo[i][j]=line[j-1];
}
个人经验,也希望大佬告诉我原因。希望对和我一样的代码菜鸟有所帮助。