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() 不需要转换说明。具体看下图代码,以下例子大意为大写字母与小写字母的转换。
#includeint 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条)