vscode 中scanf()无法读入中文怎么办?

发布网友 发布时间:2022-04-21 22:35

我来回答

1个回答

热心网友 时间:2023-11-20 17:48

更新 (2021/05):

终于发现完美解决方案了!

如果你用的编译器是 gcc 系列,可以设置编译器参数来解决这个问题:

-finput-charset=UTF-8 -fexec-charset=GBK

第一个参数指定被编译文件编码为 utf-8,第二个参数指定输出的二进制文件编码为 gbk,即中文 windows 系统默认编码,除此之外不需要改动任何地方,非常舒服!

------------------------------------------

以下为原回答 (2020/04):

vscode debug 中文乱码和没中文都是老问题了,但是正常运行的时候不乱码还是可以做到的。

要检查和匹配两个地方的编码:

内置终端

    新开一个内置终端(现在windows一般都是 powershell 了吧),敲命令 chcp

    936 对应 GB 2312,65001 对应 UTF-8,windows 中文系统默认是 936。

2. 你的代码文件

    看最下面的 UTF-8,说明这个文件是 UTF-8 编码,点击它,选择第二项以编码保存

    找到 GB 2312 确定

    这样你的文件就以 GB 2312 编码保存了,之后你编译运行应该是可以正常显示和输入中文了。

我的电脑测试结果是两边都是 GB 2312 可以完美中文,两边都是 UTF-8 则只能显示中文而不能正常输入(这个有点奇怪),debug 两个都不行……

等一个高手来个万能的解答

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com