EasyX接收並顯示從控制檯輸入的數字和英文

EasyX如何接收並顯示從控制檯輸入的數字和英文

自學EasyX,由於Easyx繪圖庫裏執行不了cin和cout函數,無法通過此方法實現從控制檯顯示輸入的數字和英文
對這個問題困擾很久找不到其他易懂的辦法所以一直解決不了。相信很多人也都跟我一樣,恰好上次找到了笨方法,就把它分享給大家~

1.首先需將字符集設置爲多字符集
在這裏插入圖片描述

2.其次先看代碼

#include<iostream>
#include<graphics.h>
#include<string>
#include<conio.h>

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
在這裏插入圖片描述
由於getch()每次只接收一個字符,所以它只能顯示接收輸入的字符和數字,並不能顯示漢字,聽說drawtext()可以解決,可一直找不到其他辦法,要是有看到或者有其他方法也要共享一下給我哦

發佈了11 篇原創文章 · 獲贊 10 · 訪問量 1347
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章