VScode运行C语言终端输出中文乱码问题解决方案

VScode运行C语言输出中文乱码问题解决方案

由于 VSCode 的终端是对系统的 cmd 命令行工具的调用,而 cmd 的默认编码为 GBK。当我们在 VSCode 中以 UTF-8 编码进行代码编写且代码里含有中文字符时,在终端运行代码便会出现中文乱码现象。要解决此问题,需使 VSCode 和 cmd 的编码方式统一为同一类型,要么均为 UTF-8,要么均为 GBK。

1.问题现象

终端本应该输出"排序后的数组"结果打印出来全是乱码字符

2.解决方案(单文件配置实现/全局配置文件实现)

2.1单文件配置实现

1.点击 VSCode下方 字符编码 UTF-8 ;然后再上方弹框中选择"通过编码重新打开"

2.选择GBK格式

3.再次运行代码就可以成功打印出汉字了。

上面通过修改字符集的方法只会针对当前文件有用,如果我们再创建一个新的c文件,那么这个c文件又会打印中文乱码,例如下图

上图是,再解决test.c文件打印中文乱码后,我们又创建了一个reRest.c文件,运行程序后,发现依然打印乱码,我们可以重复上面修改字符集的方法,但是当文件多了的时候,很明显就不适用了,下面,介绍一个通过修改全局配置文件解决中文乱码问题的解决方案。

2.1全局配置文件实现

1.开启VSCode的设置,并找到setting.json文件


2.在setting.json配置文件中,添加以下代码,保存并重启VSCode;

powershell 复制代码
  "terminal.integrated.profiles.windows": {
    "PowerShell": {
      "source": "PowerShell",
      "icon": "terminal-powershell",
      "args": ["-NoLogo", "-NoExit", "-Command", "chcp.com 65001"]
    },
    "Command Prompt": {
      "path": ["${env:windir}\\Sysnative\\cmd.exe", "${env:windir}\\System32\\cmd.exe"],
      "args": ["/K", "chcp 65001"],
      "icon": "terminal-cmd"
    }
  },

3.重启VSCode后直接运行reRest.c程序,即可正常打印汉字

4.为了测试是否全局生效,我们再创建一个新的.c文件,helloWorld.c 文件进行测试;

测试结果成功!

可以发现我们在修改全局配置文件后,VSCode的字符集还是UTF-8,但是可以正常打印中文。

相关推荐
金玉满堂@bj27 分钟前
PyCharm 中 Python 解释器的添加选项及作用
ide·python·pycharm
通信小小昕1 小时前
ubuntu18.04.1无法安装vscode(安装依赖无效)
ide·vscode·编辑器
C语言小火车3 小时前
野指针:C/C++内存管理的“幽灵陷阱”与系统化规避策略
c语言·c++·学习·指针
凤年徐3 小时前
【数据结构】时间复杂度和空间复杂度
c语言·数据结构·c++·笔记·算法
鑫宇吖3 小时前
Polyspace作为MISRA-C合规性检查工具,其检查规则会根据目标C语言标准(C90或C99)动态调整限值要求。
c语言·嵌入式·c99·c90·polyspace·misra-c合规性检查
钮钴禄·爱因斯晨4 小时前
C语言 | 函数核心机制深度解构:从底层架构到工程化实践
c语言·开发语言·数据结构
爱学习的小邓同学5 小时前
数据结构 --- 队列
c语言·数据结构
啟明起鸣11 小时前
【网络编程】简易的 p2p 模型,实现两台虚拟机之间的简单点对点通信,并以小见大观察 TCP 协议的具体运行
c语言·网络·tcp/ip·p2p
秋说16 小时前
【PTA数据结构 | C语言版】线性表循环右移
c语言·数据结构·算法
七月初七淮水竹亭~16 小时前
Pycharm 报错 Environment location directory is not empty 如何解决
ide·python·pycharm