VS--printf输出乱码

提示:本文为学习记录,若有错误,请联系作者,谦虚受教。


前言

visualstudio如果不设置字符编码有可能出现中文乱码的情况。


一、操作

1.导入windows.h

#include <Windows.h>

2.设置控制台输出格式为utf-8

int main(){
SetConsoleOutputCP(CP_UTF8);  // 设置控制台输出为 UTF-8 编码

....
}

3.printf输出

std::string info  = "测试测试";
printf{"%s\r\n",info);

总结

善于总结,多进一步

### 解决 VSCode 中 printf 函数输出中文时出现乱码的方法 在处理 C/C++ 程序中的 `printf` 输出中文乱码问题时,通常是因为终端编码设置不正确或项目环境配置不当所致。以下是具体解决方案: #### 终端编码设置 确保使用的终端能够正确显示中文字符。对于 Linux 和 macOS 用户来说,可以检查并调整系统的区域和语言设置。 可以通过编辑 `.bashrc` 或者其他 shell 配置文件来设定合适的 locale 设置[^3]: ```shell export LC_ALL=zh_CN.UTF-8 export LANG=zh_CN.UTF-8 ``` 重启终端使更改生效,也可以通过命令立即应用这些变量: ```shell source ~/.bashrc ``` #### 修改 VSCode 的 Terminal 编码 进入 VSCode 的设置界面,搜索 "terminal.integrated.shellArgs.windows" 并添加参数以指定正确的代码页(适用于 Windows)。例如,在 Windows 上可使用以下 JSON 片段更新 settings.json 文件: ```json { "terminal.integrated.shellArgs.windows": [ "/K", "chcp 65001" ] } ``` 这会强制集成终端采用 UTF-8 编码模式运行。 #### 调整 GCC/Clang 编译器选项 当编译含有宽字符或多字节字符串的程序时,可能还需要向 gcc/g++ 添加 `-finput-charset=UTF-8 -fexec-charset=UTF-8` 参数,以便让编译后的二进制文件能正常解析并打印出正确的汉字[^1]。 #### 检查源文件保存格式 确认所有的 .c/.cpp 源文件均是以无 BOM 的 UTF-8 格式存储。可以在 VSCode 右下角查看当前文档编码,并点击切换到所需格式。 以上措施应该可以帮助解决大多数情况下由于编码差异引起的 `printf` 打印中文乱码现象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值