getchar()和putchar()用法

       1、 getchar是读入函数的一种。它从标准输入里读取下一个字符,相当于getc(stdin)。返回类型为int型,为用户输入的ASCII码或EOF。

       2、 putchar()以无符号 char 强制转换为 int 的形式返回写入的字符。

        (1)当输出正确的时候,返回输出字符转换为的unsigned int 值;

        (2)当输出错误的时候,返回 EOF(End of file)文件结束符。

#define _CRT_SECURE_NO_WARNINGS
#include 
int main()
{
	int ch = 0;
	//EOF--end of file文件结束标志 -> -1
	//getchar()读取字符;getchar是读入函数的一种,键盘输入什么就读取什么;
	//它从标准输入里读取下一个字符,相当于getc(stdin)。
	//返回类型为int型,为用户输入的ASCII码或EOF。
	while ((ch = getchar()) != EOF)
	{
		putchar(ch);//打印键盘输入的内容
	}
	return 0;
}

执行结果如下图所示:

键盘输入123,屏幕命令行窗口打印123;

getchar()和putchar()用法_第1张图片

3、利用getchar()进行密码确认的举例:

#define _CRT_SECURE_NO_WARNINGS
#include 
int main()
{
	char password[20] = { 0 };
	int ch = 0;
	int ret = 0;
	printf("请输入您的密码:");
	scanf("%d", &password);
	printf("请确认密码->Y/N\n");
	while ((ch = getchar()) != '\n')//不断接收字符,直到接收到'\n'!= '\n',跳出循环
	{
		;//空语句不做任何事情
	}
	ret = getchar();//从键盘获取字符
	if (ret == 'Y')
		{
			printf("密码正确\n");
		}
		else
		{
			printf("密码错误\n");
		}
	return 0;
}

执行结果如下:

getchar()和putchar()用法_第2张图片

4、通过getchar()相关条件限制实现:只能输出数字,不能输出字母的功能:

#define _CRT_SECURE_NO_WARNINGS
#include 
int main()
{
	int ch;
	while ((ch = getchar())!= EOF)
	{
		if (ch < '0' || ch>'9')//只能输出数字,不能输出字母
		{
			continue;
		}		
		putchar(ch);
	}
	return 0;
}

对照ASCII码表:

 执行结果如下:

getchar()和putchar()用法_第3张图片

 

你可能感兴趣的:(C语言,c++,c语言)