| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 643 人关注过本帖
标题:向大家请教一个基础问题
只看楼主 加入收藏
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
 问题点数:0 回复次数:8 
向大家请教一个基础问题
#include<iostream.h>
main(){
char str[6],ch;
cin.get(str,6);
cout<<str<<endl;

while(cin.get()!='\n');
cin.get(ch);
cout<<ch<<endl;
}
这个小程序如果我输入abcdefgh
那它输出则是abcde然后就再让你输入一些字符它才执行cout<<ch<<endl;我觉的如果第一次输入的字符超过了所定义的字符大小,那么它就该直接执行cout<<ch<<endl;就象上面那个我觉的它输出abcde之后应该直接输出个f,为什么它还要我再输入字符它才执行cout<<ch<<endl呢。。。还是我理解错了???
搜索更多相关主题的帖子: 基础 
2005-11-30 10:11
君子
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2005-11-23
收藏
得分:0 
while(cin.get()!='\n');
意思是重新输入一个字符,如果不是回车就输入CH,要不然就结束循环.和上面的cin.get(str,6);完全没关系啊,第一次输入是这条语句这条语句结束了才执行下面的输入.

在计算机门外徘徊着.......
2005-11-30 10:44
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
得分:0 

还是不明白,如果输入 abcd 输出abcd 然后再输入 abc 输出是a 这个没什么问题
我不明白的是如果我输入abcdefgh按我想的它的输出应该是 abcde f 实际上不是这样,它的输出是abcde它并不是提取多余的字符而是叫我再输入字符然后它才输出ch我想不明白为什么。。。。


2005-11-30 11:15
woodhead
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:1124
专家分:0
注 册:2005-7-18
收藏
得分:0 
while(cin.get()!='\n');
注意有;

2005-11-30 11:29
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
得分:0 

#include<iostream.h>
main(){
char str[6],ch;
cin.get(ch);
cout<<ch<<endl;

cin.get();
cin.get(str,6);
cout<<str<<endl;
}

这个是上面的另一种形式。。它的输出就跟我想的一样哈


2005-11-30 11:32
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
收藏
得分:0 

第一个cin到输入为'\n'的时候才关闭流

[此贴子已经被作者于2005-11-30 11:38:27编辑过]


成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2005-11-30 11:37
woodhead
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:1124
专家分:0
注 册:2005-7-18
收藏
得分:0 
while(cin.get()!='\n');
是丢弃行中剩余的字符。

2005-11-30 11:39
柳儿
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:1830
专家分:30
注 册:2004-9-23
收藏
得分:0 
哦~~我说错了,楼上让我明白一个很严重的错误。谢谢

成功会使人骄傲。如果你骄傲自大,你就会停止学习。不学习,人就停止了进步
2005-11-30 11:52
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
得分:0 
哦。。。看来还是我理解错了。。。主要是因为下面的第2个程序说是第一个程序的另一种写法但结果的输出确有些出入把我搞混了。。谢谢大家

2005-11-30 12:07
快速回复:向大家请教一个基础问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023761 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved