cin操作符的输入原理
2011-06-27 09:50
169 查看
菜鸟见解,如有不当请指教。
cin操作符的输入原理:
当有输入操作时,程序会建立一个输入缓冲区。一次输入操作的过程是这样的(以输入字符为例)。当从键盘输入字符时,这些字符都被贮存在输入缓冲区,直到输入结束,cin才直接从输入缓冲区读取字符。对前面的空白字符,cin会忽略它,去读取后面的非空白字符,直到遇到空字符,则这次的读取结束。此时,空白字符和后面的非空白字符仍然在输入缓冲区。所以,当有第2个cin>>**请求时,cin直接从刚才输入缓冲区中读取残留的字符。而没有请求键盘输入。
例如:
int main()
{
string str1,str2;
cin>>str1;
cin>>str2;
cout<<str1<<endl;
cout<<str2<<endl;
return 0;
}
输入:luo xue按enter键。
输出:luo
xue
cin操作符的输入原理:
当有输入操作时,程序会建立一个输入缓冲区。一次输入操作的过程是这样的(以输入字符为例)。当从键盘输入字符时,这些字符都被贮存在输入缓冲区,直到输入结束,cin才直接从输入缓冲区读取字符。对前面的空白字符,cin会忽略它,去读取后面的非空白字符,直到遇到空字符,则这次的读取结束。此时,空白字符和后面的非空白字符仍然在输入缓冲区。所以,当有第2个cin>>**请求时,cin直接从刚才输入缓冲区中读取残留的字符。而没有请求键盘输入。
例如:
int main()
{
string str1,str2;
cin>>str1;
cin>>str2;
cout<<str1<<endl;
cout<<str2<<endl;
return 0;
}
输入:luo xue按enter键。
输出:luo
xue
相关文章推荐
- istream类方法 重载的抽取操作符 和 cin输入
- C++中cout/cin对于空指针、字符指针的处理,及输入>>、 输出<<操作符的重载
- 标准输入的原理:cin与scanf
- c++中的各种输入操作符 cin,cin.get(),cin.getline()等函数用法总结
- 标准输入的原理:cin与scanf
- cin >> 输入操作符
- 编译原理语法分析(文本输入)源程序
- c++中字符输入函数getline、cin.getline区分
- cin深入分析(上) - cin输入操作处理【转载】
- 【C++面向对象】输入输出操作符的重载
- 源码角度分析Android的事件输入系统(input system)及ANR原理分析
- //2.、动态函数调用实现下列操作,输入2个数以及操作符计算结果。@ 求最大公约数 $求最小公倍数 - 求差+ 求和 等等
- C++ 读取键盘输入(cin/cin.getline()/cin.get()/cin.clear())
- 关于istream_iterator绑定到cin流上后如何结束输入的问题。。
- 编译原理——3.2 输入缓冲
- 登录安全性 一天内连续输入密码错误3次,第二天才能登录(过了当天凌晨24点),实现原理
- 【C语言】getchar函数的控制台输入原理,回车符的处理
- 用户自定义输出操作符/输入操作符
- C++输入cin详解
- cin.get()处理输入的问题