解决c++在控制台中的中文显示乱码和gui中的中文显示问题

在测试一些控制台命令程序时显示中文乱码解决

#ifdef _WIN32   
	//控制台显示乱码纠正   // system("chcp 65001");
	//设置字符集(使用SetConsoleCP(65001)设置无效,原因未知)    
	SetConsoleOutputCP(65001);
	CONSOLE_FONT_INFOEX info = { 0 }; // 以下设置字体来支持中文显示。    
	info.cbSize = sizeof(info);
	info.dwFontSize.Y = 16; // leave X as zero   
	info.FontWeight = FW_NORMAL;
	wcscpy_s(info.FaceName, L"Consolas");
	SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), NULL, &info);
#endif

gui中显示中文

io.Fonts->AddFontFromFileTTF("c:/windows/fonts/simhei.ttf", 13.0f, NULL, io.Fonts->GetGlyphRangesChineseSimplifiedCommon());

当使用simhei.ttf字体时可以支持中文,你也可以使用其他支持中文的字体.

//在要使用中文的地方加入u8
(u8"要使用中文")
发布了18 篇原创文章 · 获赞 31 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/alvinlyb/article/details/82914372