C语言的函数库还提供了另外两个每次只能读取/写入一个字符的函数: getche( )函数可每次读取一个字符,putchar(ch)函数则可每次输出一个字符。
这两个函数最大的差别在于:
(1)getche( )函数式不包含任何参数,它的使用方式如下:
ch= getche( );
此时若从终端机上输入一字符,C语言会自动将这个字符值设定给字符变量ch。需注意的是,当以scanf( )函数读取字符值时,需要按Enter键之后,才正式读取字符数据;当以getche( )函数读取字符值时,只要一有输入,此输入值会被立刻读入所设定的字符变量内。
(2)putchar(ch)函数式则必须包含一个字符变量,它的使用方式如下:
putchar(ch);
此时,C语言会自动将字符变量ch的内容打印在屏幕上。
除了getche( )函数外,另一个常用的读取字符函数是getchar( ),它的使用格式如下所示:
ch=getchar( );
所读取的字符会被存至变量ch内。然而getchar( )和getche( )两函数在读取字符值时,仍是有所差别的。当以getche( )函数读取字符时,不必按Enter键,程序会自动读取该字符;当以getchar( )函数读取字符时,在输入字符后,必须按Enter键。下面的程序实例将说明这个概念。
由于getchar( )和putchar( )两个函数是被定义在stdio.h标题文件内,所以下面两个程序在执行前必须加上下列指令。
#include <stdio.h>
有关#include指令的更多内容将在本书第8章做详细说明。
程序实例 ch3_20.c:getchar( )函数、getche( )函数和putchar( )函数的基本应用。
此外,还有一个常用的读取字符函数是getch( ),本函数功能和getche( )函数类似,彼此间唯一的差别在于,当以getch( )函数读取字符时,所输入的字符将不显示在屏幕上。
程序实例 ch3_21.c:getch( )函数的基本应用。
从上面的执行结果可以看到,所输入的字符(op)并未在屏幕上显示。