问题描述
比如有如下程序:
#include <iostream>
using namespace std;
int main()
{
cout<<"这是中文"<<endl;
system("pause");
return 0;
}
编译运行后:
VS Code控制台没有显示异常,但直接从文件路径打开exe程序就会看到乱码:
解决
在头文件处添加
#include <windows.h>
设置main函数中第一条语句为
SetConsoleOutputCP(65001);
也即更改后的程序如下:
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
SetConsoleOutputCP(65001);
cout<<"这是中文"<<endl;
system("pause");
return 0;
}
可以看到即便从文件路径下直接打开exe程序,中文也正常显示了。