C程序中文乱码的处理(五种方法)

C程序中文乱码问题

Windows系统下默认控制台编码格式为936(ANSI/OEM - 简体中文 GBK),而C程序文件默认编码格式为utf-8,由于编码格式不一致,程序运行时往往会出现中文乱码的情况

解决方案一

直接修改源代码,增添头文件<windows.h>和调用API函数SetConsoleOutputCP(65001),设置控制台程序输出的代码页编码为utf-8格式

解决方案二

解决方案三

如果是在vs code运行出现中文乱码,一般是将编码格式从utf-8修改为gbk、gb2312或者gb18030等即可

解决方案四

参考博客:https://blog..net/lzyws739307453/article/details/89823900
如果不想每次在vs code运行C程序文件都修改编码格式,可以将cmd.exe添加到系统环境变量,并直接修改setting.json配置文件。

步骤一:将cmd.exe添加到系统环境变量。将C:WindowsSystem32 添加到【系统变量】–【path】目录下

步骤二:修改vs code的setting.json配置文件。在setting.json配置文件中插入如下指令:

"files.encoding": "utf8",
    "terminal.integrated.profiles.windows": {
          
   
        "Command Prompt": {
          
   
            "path": "C:\Windows\System32\cmd.exe",
            "args": ["-NoExit", "/K", "chcp 65001"]
        },
        "PowerShell": {
          
   
            "path": "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe",
            "args": ["-NoExit", "/C", "chcp 65001"]
        }
    },
    "terminal.integrated.defaultProfile.windows": "Command Prompt"

解决方案五

如果是在vs2022运行出现中文乱码,可以通过自定义命令,设置高级保存选项,将编码格式修改为gbk、gb2312或者gb18030等即可
经验分享 程序员 微信小程序 职场和发展