使用Pelles C,中文字符串输出乱码或者无法编译的问题

本文介绍了作者在使用Pelles C学习C语言时遇到的中文字符串编译失败的问题。通过更改源文件编码为UTF-8(含BOM)解决了编译问题。在未更改编码前,代码无法编译;改为UTF-8后,不仅能成功编译,还能正常运行并显示中文。作者对于为何编码方式会影响编译过程感到疑惑,并分享了解决方案。

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

        本人是因为想学习C语言,所以使用了一本C语言入门教材推荐的Pelles C软件。在安装后,跟着书中的例子一个个的去敲代码。由于书中的例子都是用英文输出的,所以开始没有发现中文异常的问题。后来自己做练习的时候没有按照书中的英文来输出(自己的英语水平确实太差了),改用了中文字符串,发现编译失败,检查了好几遍代码,发现代码没有语法问题,就想到可能是中文字符串的问题。于是我改回英文,果然就编译成功了,于是我就在网上查找相关问题的解决方法,基本上都是输出乱码的情况,好像没有人像我这种情况,于是我先按照网上说的解决乱码问题的方法来试了一下,方法如下:

        依次点击Pelles C的菜单栏的File->Properties(或者Alt+Enter快捷键)进入属性选项,将Source选项卡下面的Encoding下拉栏设置为UTF-8(默认是UTF-8(no BOM)),点击OK就好了:

        我把编码方式改了之后,发现果然能成功编译了,但是我又多了一个疑问,我认为引号""里面的东西不管用哪种方式编码,大不了输出是乱码嘛,应该不会影响编译,但实际上编码方式不同确实影响了编译的成功与否,这个问题还需要大佬解惑,我把问题代码贴在下面:

#include <stdio.h>
int main(void)
{
    double
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值