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

关于C语言里的putchar与getchar函数,第1张

关于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定义时,(空格)才被默认储存,则需要getchar()吸收掉。如图所示:

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

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

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

#include 
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()函数输出。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4748862.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-08
下一篇 2022-11-08

发表评论

登录后才能评论

评论列表(0条)

保存