首页 百科知识 字符输入输出函数

字符输入输出函数

时间:2024-10-16 百科知识 版权反馈
【摘要】:getchar函数用于从标准输入设备键盘读入单个字符,返回表示读入字符的ASCII码值,并在屏上回显字符。运行结果表明该程序在运行时使用了缓冲输入。当包括用星号“*”结尾的一行字符从键盘上输入时,只有在按回车键后,这一行才被传送到程序,读入并显示在屏幕上,而不是读入一个字符显示一个字符。在C语言中,常常使用赋值语句构成一个表达式作为循环的测试条件,以提高编程技巧。

9.2.1 字符输入输出函数——getchar、putchar

最简单的控制台I/O函数是getchar和putchar函数。

getchar函数用于从标准输入设备键盘读入单个字符,返回表示读入字符的ASCII码值,并在屏上回显字符。这个函数的缺点是,读入的字符先放在输入缓冲区,直到键入一个回车符才返回给程序。为了克服这个缺点,及时自动地将读入的字符显示在显示屏上,一些C编译程序,如Turbo C设置了函数getche以完成这种功能;另一个函数是getch,它的功能和getche函数基本相同,只是它不将读入的字符回显到屏幕上。

例9-1 使用getchar函数从标准输入键盘读入一个字符,返回字符的ASCII码值,并赋予ch,将ch的值在标准输出设备显示屏上输出。

参考程序为

img550

运行结果:

  Enter a character:

输入 a

  Your character is:a

值得指出的是,由于C语言中,整型和字符型能相互转换,例9-1中虽然ch被说明为字符型变量,但getchar函数实际返回的是一个整数(函数的原型所确定),因此在大多数应用中,通常也可以将getchar函数的返回值赋予一个整型变量。

与getchar函数相对应的是putchar函数。它将单个字符变量输出在标准输出设备显示屏上。例如

  putchar(‘a’);

表示将小写字母a输出在显示屏上。如果putchar函数的实参为整数,将ASCII值与该整数

相对应的字符输出在显示屏上,例如:

  putchar(97);

也将字母a输出在显示屏上。putchar函数的其他实参可以是字符变量、表达式或转义字符。

例9-2 使用getchar和putchar函数的程序。

img551

运行结果:

输入字符串:

  echo characters*

输出字符串:

  echo characters

运行结果表明该程序在运行时使用了缓冲输入。当包括用星号“*”结尾的一行字符从键盘上输入时,只有在按回车键后,这一行才被传送到程序,读入并显示在屏幕上,而不是读入一个字符显示一个字符。

例9-3是例9-2程序的另一种更为紧凑的形式。程序中将赋值语句“ch=getchar( );”放在while循环语句的测试环境中,即:

  while ((ch=getchar( ))!=’*’)先执行ch=getchar函数,然后将返回值赋到“ch”中,ch的值作为测试条件,只要不等于“*”,则进行循环。在C语言中,常常使用赋值语句构成一个表达式作为循环的测试条件,以提高编程技巧。

例9-3 例9-2程序的改进。

img552

img553

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈