关于C语言里的putchar与getchar函数

putchar()函数与getchar()函数是一对字符输入/输出函数.

函数概要:

putchar函数:
输出一个字符到标准输出流中,相当于调用 putc(stdout) 函数。

函数原型为:int putchar(int c);参数C为要输入的字符或者对应的ASCLL码值返回值:

如果函数调用成功,返回写入的字符(用整型表示其 ASCII 码)。

返回值如果是 EOF(-1),表示该函数调用失败。

例如,下面的语句把之前赋给ch的值作为字符打印出来:

putchar(ch);

getchar函数

getchar()不带任何参数,他从输入序列中返回下一个字符。其返回值为int(为了存放EOF,不用char 是因为char默认定义为 unsigned char 还是 signed char 是取决于编译系统,所以 char 在某些编译系统可能无法存放负数;而 int 默认是 signed int。)

用法:

下面的语句读取下一个字符输入,并把该字符的值赋给变量ch:

ch = getchar();

用字符型变量char定义时,\0(空格)才被默认储存,则需要getchar()吸收掉。如图所示:

int main()
{
	int ch;
	printf("请输出一串英文字符:");
	while((ch=getchar())!='\n')

这样就不会把空格当成是一个空字符而被存储计算。

由于这两个函数只处理字符,所以他们通常比scanf() 和printf() 函数更快更便捷。而且,getchar() 和 putchar() 不需要转换说明。具体看下图代码,以下例子大意为大写字母与小写字母的转换。

#include <stdio.h>
int main()
{
	int ch;
	printf("请输出一串英文字符:");
	while((ch=getchar())!='\n')
 {
	if(ch>='A'&&ch<='Z')
	{
		ch = ch + 32;
		
	}
	else if(ch>='a'&&ch<='z')	
	{
		ch = ch - 32;
			
	}
	putchar(ch);
 }	 
    putchar('\n');
	return 0;
	 
}

可以看到,例子用getchar()函数将空字符吸收并且作为循环判断的依据,后用putchar()函数输出。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值