VSCode终端输出中文乱码问题和终端吞输出的解决方法

  • Post author:
  • Post category:其他




1、VSCode终端输出中文乱码问题

如下图所示:终端出现了中文乱码问题,这里提供一种好用的解决方法,也是从别的大神那里看到的,记录下来以防忘记吧。
在这里插入图片描述



修改VSCode终端的默认编码

这个方法运行调试时在集成终端运行。代码的内容主要是修改了集成终端的编码格式。在vscode中按快捷键

Ctrl+Shift+P

,输入

Preferences: Open Settings(JSON)

,然后在 setting.json 中加入以下的代码:

    "terminal.integrated.profiles.windows": {
        "PowerShell": {
          "source": "PowerShell", //一般推荐使用powershell
          "overrideName": true,
          "args": ["-NoExit", "/c", "chcp 65001"],
          "icon": "terminal-powershell",
          "env": {
            "TEST_VAR": "value"
          }
        }
      },

之后重启VSCode后再运行就不会出现乱码。



2、代码没问题,CodeRunner开了在终端输出选项,但终端却不输出

如果遇到这种情况,运行如下测试代码时,

#include <iostream>
#include <vector>
using namespace std;

int main() {

cout <<"Hello world" << endl;
vector<int> v;
return 0;

}

会出现如下这种情况,终端一闪而过,并没有结果输出。
在这里插入图片描述

经过搜索,大致知道了解决方案(与-static-libstdc ++进行静态链接)对该问题有帮助,但因为作者比较菜,具体的原理尚不清楚,只能把操作贴在这。

在设置中搜索 code-runner.executorMap,将其中的:

"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",

修改为:

"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -static && $dir$fileNameWithoutExt",

然后保存重启,即可解决问题,如果哪位大神知道原理,可以在评论区赐教!



版权声明:本文为cqsjyy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。