| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1910 人关注过本帖
标题:问个,getchar( )函数的问题?
只看楼主 加入收藏
宽的偶
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-8-25
结帖率:57.14%
收藏
已结贴  问题点数:2 回复次数:12 
问个,getchar( )函数的问题?
getchar()函数也是从键盘上读入一个字符, 并带回显。它与前面两个函数
的区别在于: getchar()函数等待输入直到按回车才结束,  回车前的所有输入字
符都会逐个显示在屏幕上。但只有第一个字符作为函数的返回值。
   
 为什么    定义了char po[6]
           然后用getchar()输入字符:
                                      ab<回车>
                                      c <回车>
                                      d <回车>
     最后用putchar()输出的时候是:
                                     ab
            
                                     a

                                     d

                                     c
  
问为什么,会输出这样的结果,还有就是,getchar这个不是,单字符输入函数吗?为什么可以  “ab<回车>” 输入两个字符。
搜索更多相关主题的帖子: 函数 getchar 
2010-01-02 18:45
玩出来的代码
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:河南新乡
等 级:贵宾
威 望:11
帖 子:742
专家分:2989
注 册:2009-10-12
收藏
得分:1 
getchar(),是接受单个字符,ab回车后,第一个getchar()得到a,第二个得到b第三个得到<回车>,第四个c。。。

离恨恰如春草,更行更远还生。
2010-01-02 19:53
宽的偶
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-8-25
收藏
得分:0 
回复 2楼 玩出来的代码
那为什么,他输出的,第一个是ab,第二个是d,第三个是c。
2010-01-02 21:12
xu362726904
Rank: 6Rank: 6
等 级:侠之大者
帖 子:160
专家分:471
注 册:2009-6-18
收藏
得分:1 
把你的代码写出来
2010-01-02 21:33
宽的偶
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-8-25
收藏
得分:0 
#include<stdio.h>
#define N 6
void main()
{
char po[N];
po=getchar();
po=putchar();
}

输入字符:
                                      ab<回车>
                                      c <回车>
                                      d <回车>




最后用putchar()输出的时候是:
                                     ab
            
                                     a

                                     d

                                     c


[ 本帖最后由 宽的偶 于 2010-1-2 22:40 编辑 ]
2010-01-02 21:54
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
po=getchar();
2010-01-02 22:33
角落里的娃娃
Rank: 2
等 级:论坛游民
帖 子:4
专家分:10
注 册:2010-1-1
收藏
得分:0 
这段代码难道是正确的?
2010-01-02 23:11
yiyigyf
Rank: 1
来 自:江苏苏州
等 级:新手上路
帖 子:6
专家分:3
注 册:2009-12-29
收藏
得分:0 
我来告诉你吧!
首先   char po[6]   是字符数组,
getchar()  是单字符输入函数,
用getchar()输入字符:
                                      ab<回车>
                                      c <回车>
                                      d <回车>
即:po[0]<--a,p[1]<--b,p[2]<--<回车>,p[3]<--c,p[4]<--<回车>,p[5]<--d。
注意:<回车>也是一个字符。
“还有就是,getchar这个不是,单字符输入函数吗?为什么可以  “ab<回车>” 输入两个字符。”
错!ab<回车>为三个字符!

准确代码:
#include<stdio.h>
#define N 6
void main()
{
    int i;
    char po[N];
    for(i=0;i<6;i++)
{
    po[i]=getchar();
    putchar(po[i]);
}
}


我想要一个不断追逐的理想!
2010-01-03 02:45
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
8楼是正确的·希望楼主去书本再看看getchar和putchar函数
2010-01-03 06:59
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
以下是引用宽的偶在2010-1-2 21:54:47的发言:

#include<stdio.h>
#define N 6
void main()
{
char po[N];
po=getchar();
po=putchar();
}

输入字符:
                                      ab<回车>
                                      c <回车>
         ...
  

我可好玩啦...不信你玩玩^_^
2010-01-03 09:54
快速回复:问个,getchar( )函数的问题?
数据加载中...
 
   



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

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