在两个cin.getline之间加两句话,这个问题和它本身的设计有关,不是程序的错误哦。
cin.clear();
cin.ignore( 100, '\n' );**********
cout<<"输入8字节密钥:(按照测试文档中的形式输入“0x10”,每输入一个回车)";
char c[16];
int cc=0;
char in[8][5]; //输入的key“0x10”形式
for (int i=0;i<8;i++)
{
cin.getline(in[i],5);
cout<<in[i][3]<<endl;
c[cc]=in[i][2];
cc++;
c[cc]=in[i][3];
cc++;
cin.clear();
//cin.ignore(100, '\n' );
}
for (int i=0;i<16;i++)
cout<<c[i];
本文介绍了一种在C++中处理带有空格的字符串输入的方法,特别是针对密钥形式为“0x10”的特殊输入格式。通过使用cin.getline()函数,并在读取之间进行必要的清理工作,确保了程序可以正确地读取和处理包含空格的字符串。

377

被折叠的 条评论
为什么被折叠?



