Putchar函数的用法

一句话总结:

将字母转换为ASCII码。

原型 int putchar(void)

返回值为整型,也就是常说的整数,返回值的意思是通过该函数可以得到的值。

举例:

#include<stdio.h>
int main()
{
   int ch; 
   ch = getchar();
   printf("%d",ch);
   return 0;
}

运行后输入一个字符(包括符号和字母),按下回车你将会得到其对应的ASCII码。

ASCII码对照表:ascii码对照表在线查看-工具猫

而当你想要输入多个字符,例如ac,也只会得到a的ASCII码。因为getchar只能获取一个字符的ASCII码值。

而这个时候你就要使用循环将多个字符用ASCII码表示出来。

例如:

int main()
{
	int ch;
 while ((ch = getchar())!= EOF)
 {
		printf("%d", ch);
 }
 return 0;
}

while(判断条件)

{

要循环的语句

}

上述语句代表循环语句

而其中的

(ch = getchar())!= EOF

表示为当用getchar进行输入时,如果输入的第一个字符为有效字符,且该字符不是文件结束符EOF,判断条件成立,进入while循环中。

而文件结束符EOF则可以理解为Enter键

例如:当执行到getchar这个函数时,系统会分配给它一个缓存空间,此时你用键盘输入abc,并打算执行后续程序,按下Enter键,此时缓存空间里并不是只有abc三个字符,而是包括了Enter键,即abc\n(\n表示同时也表示换行,是缓存空间里Enter键的表示),之后getchar函数会读取缓存空间里的第一个值(即a)转换为ASCII值并存入返回值中(即ch=getchar中的ch),而缓存空间中的a便会消失,以此类推,当getchar加入循环中,它会依次将缓存空间中的值转换成ASCII值并输出,而其中的\n也会转换为ASCII码,即10,。

运行上述程序,输入abc时,你将会得到97989910,此处的10就是EOF即\n的ASCII值。

要想得到abc的ASCII值,可将代码更改如下:

int ch;
while ((ch = getchar())!= EOF)
{
	if (ch != 10) {
		printf("%d", ch);
	}
	else {
		printf("\n");
	}
}

这样便可得到连续的ASCII值。

作者只是刚学c的萌新,欢迎讨论和指正!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值