c++ cout中文乱码

C++ 输出中文时,cout 会直接将字符流发送到控制台。如果你写入的是 UTF-8 编码的内容,但控制台(终端、cmd、VS 控制台)不是用 UTF-8 解码,就会显示乱码,比如:

  • “你好” 变成 “浣犲ソ”

    • 这是 UTF-8 编码的“你好”被用 GBK 解码后的结果。

 

#include <windows.h>
#include <iostream>

int main() {
    SetConsoleOutputCP(65001);  // 控制台输出 UTF-8
    std::cout << "你好" << std::endl;
    return 0;
}

 

posted @ 2025-06-09 17:03  ChuckLu  阅读(107)  评论(0)    收藏  举报