C++ char变量的cin输入cout输出问题

charch;cin>>ch;cout<<ch<<endl;如果输入123456,会输出1。chara;loop:cin>>a;cout<<a<<endl;gotoloo... char ch ;
cin>>ch;
cout<<ch<<endl;
如果输入123456,会输出1。
char a;
loop:cin>>a;
cout<<a<<endl;
goto loop;
这样输入123456,就会分6行分别输出1,2,3,4,5,6。
求高人指点,为什么会这样?char字符变量不是只能存储一个字符吗?
另外如果
char a;
int b=65;
a=b;
cout<<a<<endl;会输出A,而cin>>a;输入65却会输出6.
展开
 我来答
qcj1012
2011-03-22 · TA获得超过510个赞
知道小有建树答主
回答量:200
采纳率:100%
帮助的人:259万
展开全部
屏幕是有缓存的 当你输入123456时,按下回车,123456就到缓存了 然后你用ch读 因为ch是字符 只能读取一个 所以ch只能读一个1 而字符23456还都在缓存中
当你用第二个循环时 就开始依次读2,3,4,5,6了 读一个输出一个 所以就是输出123456
更多追问追答
追问
另外如果
char a;
int b=65;
a=b;
cout>a;输入65却会输出6.
这又是为什么呢?
追答
我的输出 是A啊  因为A的askII码  是65  所以输出时A啊

a是char型 而b=65 把b给a
a也等于65 但a是char型 所以输出A
百度网友0092ac4
2011-03-22 · TA获得超过205个赞
知道答主
回答量:137
采纳率:0%
帮助的人:62.9万
展开全部
char是一个字节
int 四个字节
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友96aa8d3
2011-03-22 · TA获得超过433个赞
知道小有建树答主
回答量:2306
采纳率:75%
帮助的人:937万
展开全部
最好不用goto 语句 我建议是字符串输入
然后一个一个字符输出
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yiswer
2011-03-22 · TA获得超过399个赞
知道答主
回答量:265
采纳率:0%
帮助的人:285万
展开全部
还是只能存1个字符呢,你下面的是循环呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式