vscode编写c语言程序输出中文乱码问题

首先我们要清楚,我们编写一个c语言程序并运行的过程。其实就是我们创建一个xxx.c文件,然后执行gcc xxx.c去生成一个xxx.exe文件,然后运行xxx.exe文件看到运行效果。

 vscode编写c语言程序输出中文乱码问题_第1张图片

vscode编写c语言程序输出中文乱码问题_第2张图片 

vscode编写c语言程序输出中文乱码问题_第3张图片 

 vscode编写c语言程序输出中文乱码问题_第4张图片

打开我们命令行查看它的属性会发现,它用的字符集是UTF-8

vscode编写c语言程序输出中文乱码问题_第5张图片 

这个时候,如果我们的c语言程序的编码格式与cmd命令行的字符集不统一,那么就会输出乱码。

而vscode运行c程序本身也是这个原理,它帮我们打开一个shell,执行gcc生成exe,运行exe文件看到输出效果,但是vscode的编码格式默认是utf8,这样编码不统一,就输出乱码了。

vscode编写c语言程序输出中文乱码问题_第6张图片 

我们可以手动修改编码格式为gbk

vscode编写c语言程序输出中文乱码问题_第7张图片

 vscode编写c语言程序输出中文乱码问题_第8张图片

 这个时候,如果代码里面变成乱码,就Ctrl撤销一下,然后就能正常输出中文了。

但是这种方式,我们每次创建一个c语言程序都需要像上面这样手动修改编码,一个更好的解决方式是再我们的vscode的设置里,选择settings.json,添加如下配置:

vscode编写c语言程序输出中文乱码问题_第9张图片

 

 "[cpp]": {
    "files.encoding": "gbk"
  },
  "[c]": {
    "files.encoding": "gbk"
  },

 告诉vscode,当编写c程序和c++程序时,采用gbk编码。

这样新建出来的c文件,默认就是gbk编码了

vscode编写c语言程序输出中文乱码问题_第10张图片

 我们再输出中文时就不会出现乱码了。

vscode编写c语言程序输出中文乱码问题_第11张图片

 知道这些原理之后,我们编写其他语言的程序的时候出现乱码问题,也可以通过类似的方法解决。

你可能感兴趣的:(vscode)