| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 724 人关注过本帖
标题:关于流和控制台的问题
只看楼主 加入收藏
heefly
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-1-5
收藏
 问题点数:0 回复次数:2 
关于流和控制台的问题
流和控制台两个概念我一直分不大清楚,请高手讲讲区别,

下面这段代码 是关于getchar()和getch()的用法,我知道getchar是从流读取数据,getch是从控制台读取,但是不回显。getche回显。getche也是从控制台读取。

在一个关于循环控制的代码中,getchar可以用'\n'来作为循环结束的控制符,但是用getch或者getche就不行,不知道是为什么。
(讲的有点多,也不知道讲清楚了没有,请多多关照新手)
下面是代码:
#include "stdafx.h"
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main(int argc, char* argv[])
{
    char c;
  while ((c=getch())!='\n')   //这里用getchar()敲回车就退出循环,OK了,用getche()或者用getch()死活不行
    {                    
          printf("%c",c);
      _putch(c);   
    }
   printf("\n\n");
    return 0;
}
好象清空流也不行
搜索更多相关主题的帖子: 控制台 
2008-01-05 15:02
jiangzw625
Rank: 1
等 级:新手上路
帖 子:119
专家分:0
注 册:2006-3-27
收藏
得分:0 
getch()返回的是'\r'不是'\n'

马马乎乎
2008-01-05 18:41
heefly
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-1-5
收藏
得分:0 
先谢谢了!确实是那样。
但是要返回'\n', 键盘怎么输入啊?
2008-01-06 19:20
快速回复:关于流和控制台的问题
数据加载中...
 
   



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

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