EasyX接收并显示从控制台输入的数字和英文

EasyX如何接收并显示从控制台输入的数字和英文

自学EasyX,由于Easyx绘图库里执行不了cin和cout函数,无法通过此方法实现从控制台显示输入的数字和英文
对这个问题困扰很久找不到其他易懂的办法所以一直解决不了。相信很多人也都跟我一样,恰好上次找到了笨方法,就把它分享给大家~

1.首先需将字符集设置为多字符集
EasyX接收并显示从控制台输入的数字和英文_第1张图片

2.其次先看代码

#include
#include
#include
#include

using namespace std;

int main()
{   
    //设置窗口大小  背景颜色
	initgraph(480, 480);
	setbkcolor(WHITE);
	cleardevice();
	
	//设置字体颜色 还有测试显示字体
	settextcolor(BLACK);
	settextstyle(25, 0, "黑体");
	outtextxy(10, 220, "显示内容:");


	string str1,str2;   //头文件 string 
	//str1用来放c的总内容 str2每次存放“显示内容:”+str1,方便输出
	
	char c;  //定义字符c接收键盘输入
	while ((c = _getch()) != '\r')  //如果没按回车,接收一个c
	{  //getch()头文件 conio.h
		str2 = "";
		if (c == '\b')  //如果c是退格符,str1删掉一个
		{
			str1 = str1.substr(0, str1.size() - 1);

		}
		else{
			str1 += (int)c;  
		}
		str2 = "显示内容:" + str1;
		cleardevice();
		outtextxy(10, 220, str2.c_str());  //在窗口坐标为(10,220)的地方开始输出str2的内容
	}
	while (1);  //结束不跳出
}

说明:这里str1拿来存放getch()得到的总内容, str2用来存放 显示内容+str1,一定要区分

运行结果:输入Easy.X
EasyX接收并显示从控制台输入的数字和英文_第2张图片
由于getch()每次只接收一个字符,所以它只能显示接收输入的字符和数字,并不能显示汉字,听说drawtext()可以解决,可一直找不到其他办法,要是有看到或者有其他方法也要共享一下给我哦

你可能感兴趣的:(EasyX,Easy,接收显示控制台输入的数字和英文)