c++ cin的问题

cin是要经过内存缓冲区的。。。
cin是输向内存缓冲区吗?
系统怎么判断让变量从内存缓冲区中读取?
帮我看看这两个问题吧,谢谢了
http://zhidao.baidu.com/question/78275393.html
http://zhidao.baidu.com/question/78275393.html

cin是从标准输入设备读入,默认的就是键盘啦
它也不是一下子就进到内存缓冲区的……先进到内存中的键盘缓冲区,内存需要数据是才从键盘缓冲区内读数据,
比如
char a;
cin>>a;
输入了asdfasdf,内存不可能也不可以让他们都进主缓冲区去,只需要一个可打印字符赋给字符变量a
其他的还在键盘缓冲区呢 呵呵
温馨提示:内容为网友见解,仅供参考
无其他回答

关于C++中cin的几个问题
当你输入“ABAF”的时候,只会显示“A”,因为只读入了一个字符(空格也可以读入)。3.cin.get()第二个用法,也是输入一行(同cin.getline()),但是区别就是,不输出分隔符~

关于C++输入cin的问题,下面的程序,如果输入的不合法,那就将陷入死循环...
接着while循环继续读输入缓冲区,依然类型不匹配,于是就成了死循环

c++语言关于cin的使用问题
一般只要用cin>>x>>y;就行了,程框矿里面输入时 用空格或者回车或者TAB键会自动隔开x,y 如果想要把空格记录进变量x或者y里面 常用的方法是 用cin.get 比如 char ch;ch=cin.get();或者cin.get(ch);括号中也可以放数组 如 char a[20];cin.get(a,20);cout<<a<<endl;那么在键盘...

C++里关于cin问题
cin可以看成把输入传入一个变量中,但是"age"是一个字符串,在内存中没有固定地址,所以不知道往那里传,如果你想要去掉引号,则可以看成一个变量名,但是需要加上一个变量定义,就是加上一句 string age;

c++编程问题 (关于cin的)
第一个cin是用户第一次输入的值,但是你要统计用户输入的正负的个数,那必然是输入多个值。所以在while循环里面的末尾添加cin的作用就是 用户以后输入的值了,知道用户输入0则停止。在while里cin>>n n的值就改变了,那么while()就会触发,进而判断是否满足条件。第二个cin是不指定次数循环进行的必要...

c++中cin,cin.get(
在C++中,cin>>通常只能读取一个单独的单词,这对于处理包含空格的字符串时会遇到问题。为了解决这个问题,cin.get()函数显得更为实用。它允许读取指定长度的字符串,包括空格和特殊字符。以下是两种使用cin.get()的示例:首先,直接使用cin.get(name,size)会读取到行尾,但会保留换行符,导致第二次...

C++中Cin的问题
这个得自己实现。用getch()吧,输入不回显,然后用户输入一个字符你输出一个*就是了。但是你得判断诸如回车,退格等特殊键的行为。示例如下:include <fstream> include <iostream> include <string> include <conio.h> using namespace std;int main(){ char tmp[256] = {'\\0'};int index = ...

C++的cin分隔符问题
数据类型不对,一般会读取错误。cin>>a; \/\/a为int类型,读取一个浮点数,必然发生错误。至于错误处理,估计是a只读取了整数部分,把剩余的留在了缓冲区,读取b的值时,又给读进来了。

用了cin,程序后面就终止了,但scanf可以用?
如果你在 C++ 中使用了 `cin` 函数,程序后面终止的原因可能是因为 `cin` 函数等待用户输入数据,但用户没有输入数据或者输入的数据格式不正确,导致程序一直等待下去。这种情况下,你可以在使用 `cin` 函数之前先清空输入缓冲区,例如:include <iostream> include <limits> using namespace std;int ...

c++用cin输入数组问题
只能先用一行输入a,再用一行输入b[a]——因为cin是从右边开始压栈的,就是先压b[a]再压a,显然压b[a]时还不知道a是多少,后面输入了a,但改变不了已经压栈了的内容。就是说这种情况一定要保证操作b[a]时a必须是已知的。但这种东西与编译器关系很大,也许后来的编译器异想天开,弄个别致的...

相似回答
大家正在搜