getchar()用法

转载 2015年07月08日 14:44:59

一、概念:

getchar 由宏实现:#define getchar() getc(stdin)。getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).当用户键入回车之后,getchar才开始从stdin流中每次读入一个字符.getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取.也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键.

 

键盘输入函数:
getchar函数getchar函数的功能是从键盘上输入一个字符。其一般形式为: getchar(); 通常把输入的字符赋予一个字符变量,构成赋值语句,如:
char c;
c=getchar();
#include<stdio.h>
void main(){
char c;
printf("input a character\n");
c=getchar();
putchar(c);
}


二、使用getchar函数还应注意几个问题:
1.getchar函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。
2.使用本函数前必须包含文件“stdio.h”。
3.在TC屏幕下运行含本函数程序时,将退出TC 屏幕进入用户屏幕等待用户输入。输入完毕再返回TC屏幕。
void main(){
char a,b,c;
printf("input character a,b,c\n");
scanf("%c %c %c",&a,&b,&c);
printf("%d,%d,%d\n%c,%c,%c\n",a,b,c,a-32,b-32,c-32);
}
输入三个小写字母
输出其ASCII码和对应的大写字母。
void main(){
int a;
long b;
float f;
double d;
char c;
printf("%d,%d,%d,%d,%d",sizeof(a),sizeof(b),sizeof(f)
,sizeof(d),sizeof(c));
}
输出各种数据类型的字节长度。

 

关于C语言中getchar()的详细使用

(此贴对自己受用,来源网络,在此分享)在C语言中有个重要的库函数getchar(),可从终端获得一个字符的ASCII码值。在终端输入字符时并非输入一个字符就会返回,而是在遇到回车换行前,所有输入的在C...
  • meidong52617
  • meidong52617
  • 2015年03月29日 17:19
  • 13667

getchar函数的用法

一、概念: getchar 由宏实现:#define getchar() getc(stdin)。getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符...
  • yuehailin
  • yuehailin
  • 2017年01月20日 21:49
  • 1075

getchar的使用

1.从缓冲区读走一个字符,相当于清除缓冲区      2.前面的scanf()在读取输入时会在缓冲区中留下一个字符'\n'(输入完s[i]的值后按回车键所致),所以如果不在此加一个 getcha...
  • Jiang_youge
  • Jiang_youge
  • 2016年08月04日 10:11
  • 310

关于字符串gets()和scanf("%s")和getchar()的用法

分析如下::::: 对于字符串的输入,一直是很怕,在写代码的过程中都是避免使用,特别是当需要输入2个字符串的时候,经常出现如下的情况: #include"stdio.h" main() { ...
  • Yiyuan_chen
  • Yiyuan_chen
  • 2016年11月09日 21:54
  • 654

C语言中getchar()和putchar()的实现细节

单个字符的输入输出函数 本文引用了以下博客 http://www.cnblogs.com/jiangjun/archive/2012/05/16/2503676.html http://www.cn...
  • happyforever91
  • happyforever91
  • 2016年06月19日 20:08
  • 3107

C语言中的getchar和putchar详解

首先给出《The_C_Programming_Language》这本书中的例子: #include stdio.h> int main() {     int c;     c =...
  • euyy1029
  • euyy1029
  • 2017年01月09日 16:26
  • 154

getchar()的用法

c语言getchar的用法: 1.从缓冲区读走一个字符,相当于清除缓冲区 2.前面的scanf()在读取输入时会在缓冲区中留下一个字符'\n'(输入完s[i]的值后按回车键所致), 所以如...
  • GSD4_chenmeng
  • GSD4_chenmeng
  • 2017年06月18日 09:22
  • 146

getchar()的用法

许多初学者都习惯用char 型变量接收getchar、getc,fgetc 等函数的返回值,其实这么做是不对的,并且隐含着足以致命的错误。getchar 等函数的返回值类型都是int 型。当这些函数读...
  • xls807205979
  • xls807205979
  • 2015年01月05日 18:16
  • 125

getchar()的用法

1.从缓冲区读走一个字符,相当于清除缓冲区 2.前面的scanf()在读取输入时会在缓冲区中留下一个字符'\n'(输入完s[i]的值后按回车键所致),所以如果不在此加一个getchar()把...
  • qinzhenhua100
  • qinzhenhua100
  • 2014年11月08日 16:45
  • 265

getchar()的用法

1.从缓冲区读走一个字符,相当于清除缓冲区 2.前面的scanf()在读取输入时会在缓冲区中留下一个字符'\n'(输入完s[i]的值后按回车键所致),所以如果不在此加一个getchar()把...
  • Vivian8725118
  • Vivian8725118
  • 2014年02月01日 20:50
  • 969
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:getchar()用法
举报原因:
原因补充:

(最多只允许输入30个字)