vscode 使用code runner 运行代码输出乱码

vscode 使用code runner 运行代码输出乱码

先指出问题所在:

代码文件使用的编码格式终端使用的编码格式不一致,查看代码文件右下角,会显示代码文件的编码格式。

测试代码如下:

#include<iostream>
using namespace std;
int main() {
    cout<<"你好!";
}

此时输出乱码:

请添加图片描述

查看右下角的代码文件编码格式,显示为 utf-8
请添加图片描述

终端输入chcp, 显示当前终端编码为 936,即为gbkutf-865001
请添加图片描述

可以点击文件右下角,通过编码保存,选择gbk保存;也可以在终端输入chcp 65001将终端编码改为utf-8。这里选择第二种,输入chcp 65001 则代码和终端编码都为utf-8

重新运行,正常输出:
请添加图片描述

但这种方式只是暂时的,如果终端重新打开,则又得重新改。可以在settings.json中配置终端信息。

点击扩张->设置->在settings.json中设置。

请添加图片描述

{}中输入以下代码

    // 设置终端的参数,编码格式等
    "terminal.integrated.profiles.windows": {
        "Command Prompt": {
            "path": "C:\\Windows\\System32\\cmd.exe",
            "args": ["-NoExit", "/K", "chcp 65001"]
        },
        "PowerShell": {
            "source": "PowerShell",
            "args": ["-NoExit", "/C", "chcp 65001"]
        }
    },
    "terminal.integrated.defaultProfile.windows": "PowerShell",   //使用PowerShell 或者Command Prompt作为终端

请添加图片描述

注意前后的,否则会影响其他设置。现在,每次打开终端都会设置编码为UTF-8

请添加图片描述

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,如果您在使用 VSCode Code Runner 运行 C/C++ 代码时出现乱码,可能是因为您的代码文件编码格式与您的系统默认编码格式不一致所致。您可以尝试将代码文件的编码格式改为 UTF-8,并在 VSCode 设置默认编码格式为 UTF-8,然后重新运行代码。如果问题仍然存在,请提供更多详细信息以便我们更好地帮助您解决问题。 ### 回答2: VS CodeCode Runner插件是一款强大的运行代码的工具,在开发C/C++程序时十分实用。然而,有时候在使用Code Runner时会遇到乱码的问题。 出现乱码的主要原因是Code Runner使用默认的命令行运行程序,而默认编码是GBK,而我们写的程序可能包含UTF-8编码的文字符,这就导致了输出乱码的情况。为解决这个问题,需要进行以下设置: 1. 修改Code Runner的配置文件,找到"code-runner.executorMap"选项,将其的"code-runner.executorMap": {"c": "gcc $fullFileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt", "cpp": "g++ $fullFileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt", "java": "cd $dir && javac $fileName && java $fileNameWithoutExt"}, 2.在这个选项加入编码设置,例如: "code-runner.executorMap": { "c": "gcc $fullFileName -o $fileNameWithoutExt && chcp 65001 && $dir$fileNameWithoutExt", "cpp": "g++ $fullFileName -o $fileNameWithoutExt && chcp 65001 && $dir$fileNameWithoutExt", "java": "cd $dir && javac $fileName && java $fileNameWithoutExt" }, 3.修改完成后,Ctrl + Alt + N 即可运行程序。 通过以上设置,我们可以在Code Runner成功地运行包含文字符的C/C++源程序,并且不会出现乱码的问题。 ### 回答3: 在使用VSCodeCode Runner插件时,有时可能会遇到C/C++代码乱码的问题,这种问题一般是由于编码不一致或者编译器配置不当所引起的。下面将分别从这两方面进行介绍并解决。 1. 编码不一致 在VSCode打开代码文件时,默认的编码格式是UTF-8,如果C/C++源文件的编码格式不是UTF-8,将会导致乱码显示。在这种情况下,需要将C/C++源文件的编码格式转换为UTF-8,具体步骤如下: (1)打开C/C++源文件。 (2)点击编辑器右下角的编码格式选项,选择“Reopen with Encoding”,再选择UTF-8编码。 (3)保存文件(Ctrl+S),然后重新编译运行代码即可。 2. 编译器配置不当 有时,我们在使用Code Runner插件编译运行代码时,会发现输出结果是乱码。这种情况一般是由于编译器使用了错误的字符集而导致的。在这种情况下,需要将编译器配置为正确的字符集,具体步骤如下: (1)打开Code Runner插件的设置界面(Ctrl+Shift+P,输入“Code Runner: Open User Settings”并回车)。 (2)在设置界面搜索“code-runner.executorMap”,找到C/C++代码对应的命令,并在该命令后面添加以下配置: "-finput-charset=utf-8", "-fexec-charset=utf-8" (3)保存设置并重新编译运行代码,此时输出应该已经正确显示。 总结:以上就是解决VSCodeCode Runner插件C/C++ 代码乱码的两种方法,需要注意的是,如果仅仅是将编码格式转换为UTF-8并不能解决所有的乱码问题,有些情况下仍需要配置编译器的字符集。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值