编码总结如下

VS2019一般的编码是UTF-8编码, win11操作系统的编码可能为GB2312,VS整个工程中使用的都是UTF-8编码,但是在系统内生成的其他文件夹的名字则是系统的编码

如何选择?

Qt 项目:优先用 QString 和 QByteArray(无缝集成 Qt API)。

纯 C++:用 std::string(兼容 STL)。

C 接口/底层:用 char*(但需谨慎内存管理)。

二进制数据:用 QByteArray 或 std::vector<uint8_t>。

常见问题

Q1:为什么 QString 不直接用 std::string?

答:QString 为 Qt 生态优化(如信号槽、Unicode 支持),而 std::string 是通用实现。

Q2:const char* 和 char* 的区别?

答:const char* 是只读的,char* 可修改(但需手动管理内存)。

Q3:中文乱码如何解决?

答:确保统一编码(如 UTF-8):

cpp

QString s = QString::fromUtf8("你好"); // 显式指定编码

当从一个文本中读取一个字节流的时候要指定编码,如果不指定如果有中文的话乱码

出现乱码的根本原因,编码的内容和用的解码是不一致的,编码和解码用的字符集不一样

相关推荐
Hello_Hamburger11 分钟前
xv6项目八股(不懂的地方记录补充)
c++·操作系统
蚂蚁取经42 分钟前
IEE754标准,double和int转换,在线计算器
c++
繁华似锦respect1 小时前
SSL/TLS 协议详解:安全通信的基石
linux·服务器·c++·网络协议·安全·visualstudio·ssl
uyeonashi1 小时前
【从零开始学习QT】信号和槽
数据库·c++·qt·学习
YxVoyager1 小时前
OpenCV C++ 学习笔记(三):矩阵基本操作、遍历图像矩阵的方法及性能分析
c++·opencv
虾球xz1 小时前
CppCon 2014 学习: C++ Test-driven Development
开发语言·c++·学习
小吴同学·1 小时前
OPC Client第6讲(wxwidgets):Logger.h日志记录文件(单例模式);登录后的主界面
开发语言·c++·单例模式·wxwidgets
想睡hhh2 小时前
Practice 2025.6.1—— 二叉树进阶面试题(2)
c++·算法·二叉树·遍历
夜泉_ly2 小时前
Qt -使用OpenCV得到SDF
c++·qt·算法
?!7143 小时前
算法打卡第11天
数据结构·c++·算法·哈希算法