codeblocks中文乱码问题

第一步

		点开设置-->编辑器-->encoding settings

在这里插入图片描述

		设置编码为UTF-8,点击确定

第二步

		打开设置-->编译器设置-->Other compiler options

在这里插入图片描述

输入:

-finput-charset=UTF-8
-fexec-charset=GBK

设置之后,需要随便改动一下代码重新编译即可。

-finput-charset用来指定输入文件的的字符编码,如果不指定,将无法将L“中文"这样的字符正确转化为宽字符。相反,未指定输入文件的字符编码时,MinGW编译环境下的gcc将按本地字符编码解析源文件,将普通字符串仍然按照文件使用的本地字符编码编入程序,并将含有宽字符标量L的字符串按照本地编码来识别并转为UTF-8编码(很奇怪,它不是转为UNICODE编码,反而,在指定了源文件的字符集之后却转为了UTF-16编码。同时,这种不指定源文件编码方式却使用宽字符标量L指明编译器要将特定字符串转换成UNICODE编码的行为将会带来一个警告,而不是编译报错)。-fexec-charset指定了字符串所使用的格式。
比如说,如果源文件保存的是GBK格式的,那么编译成程序时,其中的字符串就是GBK编码的。但是如果你的程序其实需要字符串按UTF-8来编码,那么就可以指定编译选项-fexec-charset=UTF-8 -finput-charset=GBK

出现如下错误

在这里插入图片描述

在这里插入图片描述

此种错误,可能程序本身没有语法错误,应该是每一行的空格的编码不对,只需要将程序出错行前面的空格删掉,然后让程序再退回即可解决问题!

一般是编码不一致导致,通常是从网上复制下来的代码,导致网页编码不同,编译器不识别导致。

出现"error:converting to execution character set illegal sequence"

也是编码的问题
在编译器中设置
-finput-charset=UTF-8
然后随便改动一下代码重新编译即可。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值