初识C++的输入
cin的用法:
int a; cin>>a;
cin是C++中的标准输入流对象,是指cin会从你的输入中读取相应类型数据放入后面的变量中。cin可以支持任何数据类型。
cin可以连续使用且数据类型可以不相同 eg:int a; string b; cin>>a>>b;
使用注意事项:1.需要包含头文件#include<iostream>
2.cin无法读取空白字符,因为cin是将空格符当做是两个数据之间的分隔符。但是可以与getline配合直接读取一行数据(包含空格符)。
扩充:
getline与cin的配合:string s; getline(cin,s);即可读取一整行放入s中。但是getline是可以读取换行符的,如果之前有残存的换行符的话,getline可能会读取一个空行,因此在使用前一定要注意去除换行符。
如何处理输入错误情况:
有另几个cin变式来处理这种情况:cin.fail()该变式会判断输入的类型是否错误,返回 true or false。
cin.clear()该变式可以用来清除cin的错误状态。
cin.ignore()可以忽略缓冲区中剩余的无效字符。默认忽略一个字符,一般用来清楚换行符。cin.ignore(5,'\n’)是指最多忽略五个字符,直到\n时停止。可通过cin.ignore(numeric_limits<streamsize>::max(), '\n');来清除剩余的所有字符。注意使用
<limits>头文件。
由上我们就可以写出输入错误时的代码如下
int num; cin>>num;
if(cin.fail())
{
cout<<"输入错误,请重新输入";
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(),'\n');
cin>>num;
}
刚开始学C++,想通过写博客记录自己的收获,欢迎大家改错,每一次改错都会是我的进步。