yq990511 2022-03-09 16:02 采纳率: 33.3%
浏览 43
已结题

c++字符串输入出现问题

问题遇到的现象和发生背景

字符串输入
为什么无法输入符号

img

问题相关代码,请勿粘贴截图

int a[maxline][maxline];
int b[maxline][maxline];
int column1,column2,row1,row2;
string the_chosen_symbol;
cout<<"请输入矩阵1的行数,和列数:"<<endl;
cin>>column1>>row1;
cout<<"请输入矩阵2的行数,和列数:"<<endl;
cin>>column2>>row2;
cout<<"请输入想要进行的运算“+”代表矩阵加法,”1-2“代表矩阵矩阵1减矩阵2,”2-1“代表矩阵2减矩阵1,”1*2“矩阵1乘矩阵2,“2*1”矩阵2乘矩阵1;"<<endl;
getline(cin,the_chosen_symbol);
cout<<"输入矩阵1"<<endl;
for(int i=0;i<row1;i++)
{for(int j=0;j<column1;j++)
cin>>a[i][j];
cout<<endl;}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2022-03-09 16:19
    关注

    在getline前,清空一下输入缓冲区,否则前面输入时在缓冲区里还有换行符
    https://blog.csdn.net/selina8921/article/details/79067941
    cin.clear();
    cin.sync(); //或者用cin.ignore();

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月9日