新闻详情

新闻详情

首页 / 资讯中心 / 详情

std::wcout输出的不是预期的结果

发布时间:2026/9/28 20:29:16来源:尧图网络
std::wcout输出的不是预期的结果
// D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe // D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe test.cpp -o test.exe -municode #include windows.h #include iostream #include string int wmain() { std::wcout L 剪贴板测试程序 std::endl; return 0; }为什么程序只打印出了前面的部分内容这个问题是因为std::wcout和Windows 控制台的编码/缓冲机制不兼容导致的。暂时没有想到解决方案临时替换成// D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe // D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe test.cpp -o test.exe #include windows.h #include iostream int main() { SetConsoleOutputCP(CP_UTF8); // 控制台输出 UTF-8 std::cout 剪贴板测试程序 std::endl; return 0; }这种可以正常打印。SetConsoleOutputCP(CP_UTF8); // 控制台输出 UTF-8这是什么这行代码把当前控制台窗口的输出代码页设置为UTF-8代码页 65001这样控制台就能正确显示UTF-8 编码的字节流。什么是代码页Code Page控制台本质上只是一个显示字符的窗口它收到的是一串字节需要知道这些字节对应哪些字符才能显示。这个字节 → 字符的映射表就叫代码页。常见的代码页代码页含义936 (CP_GBK)简体中文 GBKWindows 中文系统默认65001 (CP_UTF8)UTF-8437美国英语 DOS1252西欧 Windows// D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe // D:\Qt\Qt5.12.12\Tools\mingw730_32\bin\g.exe test.cpp -o test.exe #include windows.h #include iostream int main() { std::cout 剪贴板测试程序 std::endl; return 0; }为什么需要它举例你的程序用std::cout输出了 UTF-8 编码的字节剪贴板 的 UTF-8 字节E5 89 AA E8 B4 B4 E6 9D BF如果控制台代码页是936 (GBK)它会把E5 89解释成一个 GBK 字符AA E8解释成另一个……结果就是乱码。如果你先调用SetConsoleOutputCP(CP_UTF8)控制台就按UTF-8 规则解析这些字节正确显示剪贴板。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

腾讯云SSL证书部署与Nginx排错:从DNS验证到证书链详解 2026/9/28 23:41:22

腾讯云SSL证书部署与Nginx排错:从DNS验证到证书链详解

1. 为什么你的腾讯云SSL证书总是“不生效”先说一个扎心的事实:我见过太多人把SSL证书不生效的锅甩给腾讯云,其实超过一半的问题都是自己的操作顺序或者理解出了偏差。腾讯云的SSL证书服务本身很成熟,但它的“一键部署”能力反而容易让使用者…

阅读更多 →
Java Map核心机制与实战选型:从HashMap到ConcurrentHashMap 2026/9/28 23:41:10

Java Map核心机制与实战选型:从HashMap到ConcurrentHashMap

刚接触Java的时候,很多人对Map的印象就是“一个能存键值对的盒子”,用到最多的也就是HashMap的put和get。等真正经历了几轮Code Review和线上故障之后才会发现,Map里藏的东西远比想象中多:hash碰撞怎么处理、扩容为什么有性能坑、…

阅读更多 →
从单体Agent到Multi-Agent:架构演进与Supervisor模式实战 2026/9/28 23:41:10

从单体Agent到Multi-Agent:架构演进与Supervisor模式实战

1. 从单体 Agent 到 Multi-Agent 的必然演进1.1 单体 Agent 到底能扛多少事先把概念对齐。这里说的单体 Agent,指的是一个 LLM 驱动的智能体,配一套提示词、一组工具(Tool)、一个 ReAct 或类似 Plan-Execute 的循环,独…

阅读更多 →
AI辅助建筑方案协作:从构思到可视化的效率提升实战 2026/9/28 23:41:10

AI辅助建筑方案协作:从构思到可视化的效率提升实战

1. 建筑方案协作的真实痛点与AI切入逻辑干了十几年建筑设计,我最怕听到的一句话就是“这个方案感觉不对,你再改改”。不是怕改图,是怕那种“感觉不对”背后的沟通黑洞。一个建筑方案从概念到落地,中间要经过草图、体块推敲、功能排…

阅读更多 →
AI辅助建筑方案协作:文字生图快速可视化与沟通提效实践 2026/9/28 23:40:50

AI辅助建筑方案协作:文字生图快速可视化与沟通提效实践

1. 建筑方案协作的真实痛点与AI切入逻辑干了十几年建筑设计,我最怕听到的一句话就是“这个方案感觉不对,再调一版看看”。不是怕改图,是怕那种“感觉不对”背后的沟通黑洞——甲方说不清要什么,设计师猜不透想表达什么&#xff0c…

阅读更多 →
Java Swing捕鱼达人:面向对象与游戏开发实战 2026/9/28 23:40:44

Java Swing捕鱼达人:面向对象与游戏开发实战

简介:这是一份基于Java开发的「捕鱼达人」休闲游戏完整实现项目,面向Java初学者与游戏开发入门者,帮助理解面向对象设计、图形界面编程及游戏逻辑架构。资源包含223个文件,以60个核心Java源码(如FishManager、CannonMa…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉