标题:getchar();和putchar();具体用法求教
只看楼主
浩杰
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-3-3
结帖率:100%
已结贴  问题点数:20 回复次数:4 
getchar();和putchar();具体用法求教
main()
{
int a;
 a=geichar();
while(a!=EOF){
putchar(a);
a=getchar();
}
}

-----------------分割线-----------------------
还有就是  某段代码编好后 一运行闪一下就消失了。
后面加个getchar(); 就可以保证不消失(按空格除外)。
那么上面代码中的a!=EOF是什么意思?
(上面那段代码中按空格就只是换行或者复制以输入内容)
getchar  putchar具体用法还有那些?
麻烦大家帮个忙 先谢谢了。
搜索更多相关主题的帖子: 分割线 消失 
2012-04-07 23:04
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
得分:7 
   EOF 是一个宏 代表-1
貌似有一定的意义 在文本读取的时候代表文本的结尾。
在这里可能是输入终止。 貌似windows 快捷键 有代表终止输入 忘记到哪本书看到了,自己没有用过。
你就当成输入字符的ASCALL 是-1 就不在循环了。

一般一闪而过 是有些编译器 比喻vs 2008 当你编控制台程序的时候 是一闪而过的。
要用getchar 或者别人可以暂停的函数处理一下。具体的原因我也没有去研究过。
编译器要那样你也没有办法。
vc6 可以不加

用心做一件事情就这么简单
2012-04-07 23:12
玉面狂龙
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:82
专家分:156
注 册:2012-2-23
得分:7 
getchar是从键盘接受输入字符,而putchar是逐个输出字符,a!=EOF是指输入的内容不为结束时,意思是输入键不为ctrl+z时,程序就继续运行,当然这必须是在windows 系统下,在linux下是ctrl+d
2012-04-07 23:13
阴阳
Rank: 4
等 级:业余侠客
帖 子:102
专家分:297
注 册:2012-4-7
得分:7 
解决一闪而过的问题可以加
#include<stdlib.h>
system("pause");
这样可以暂停

一阴一阳之谓道!
2012-04-07 23:16
浩杰
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-3-3
得分:0 
感谢楼上的帮助
2012-04-07 23:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-365345-1-1.html




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

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