QT Creater 提示Warning C4189解决办法

本文介绍了两种解决QT Creator中出现的Warning C4189的方法,并详细说明了如何设置文件编码以正确显示中文。第一种方法涉及修改文本编辑器的文件编码设置,而第二种方法针对QT5,建议使用QString::fromLocal8Bit或QStringLiteral处理字符串常量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一种尝试:

工具->选项->文本编辑器->Behavior->文件编码

进行如下设置:

 

 再点击Apply,最后点击ok。

虽然程序没有提示C4189的错误,但是代码运行的结果没有显示中文,效果如下图:

 第二种尝试:

在第一种尝试的基础下进行了下面的尝试,

把代码中的

label.setText(QObject::tr("I'm ok,生活!"));

改为

label.setText(QString::fromLocal8Bit("I'm ok,生活!"));

运行后可见中文部分正确显示出来了:

 因为第一种尝试是正对QT4的,对于QT5中可使用QString::fromLocal8Bit 来转成Unicode即可。也可以用QStringLiteral来处理字符串常量。

label.setText(QStringLiteral("I'm ok,生活!"));
运行结果与上图一致。
 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值