搜索
bottom↓
回复: 7

keil定义字符串怎样显示特殊字符

[复制链接]

出0入0汤圆

发表于 2020-11-11 11:09:52 | 显示全部楼层 |阅读模式
请教下 KEIL里面定义字符串的时候  怎样可以正常显示特殊字符   像这样的:é ä ť  í  实际调用时需要能自动转成unicode编码。汉字是可以正常这样用的 str[] = "汉字"。特殊字符确不行,str[] = "Pripájanie",实际上特殊字符á显示不出来  是乱码。

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入22汤圆

发表于 2020-11-11 11:22:59 | 显示全部楼层
设置编辑器的编码为utf8

出0入20汤圆

发表于 2020-11-11 11:23:25 | 显示全部楼层
人类的语言要在计算机系统里面显示出来是需要底层支撑的,目前一般会遇到的问题基本上都集中在两个层面:
一个是编码库用于系统识别比如你要用简体汉字的话需要用GB2313,繁体要用BIG5,还有更大的字符集编码库比如uft8,当然如果你只用26个字母加标准符号你甚至可以直接用ASCII字符编码.
二个是字体,字体就是系统识别到字符以后要显示的时候把这个字符显示成什么样子,换言之一个万能的字体应该是包含了对应了字符集中所有的符号的,但是事实上大量的字库里面就只有常用字符,所以我们会在软件上看到各种口口口就是因为当前用的字体里面没有这个字,所谓的生僻字系统不会写~

所以,你MDK编辑器里面的编码字符集是什么?字体又是什么?

一般来讲,PC上遇事不决直接uft-8就完事了~
但是单片机那头就不一定了~

出20入186汤圆

发表于 2020-11-11 11:44:52 | 显示全部楼层
看你KEIL里设置的编码,如果默认是GB2312,那当然其它编码显示不出来了

出0入93汤圆

发表于 2020-11-11 11:57:19 来自手机 | 显示全部楼层
Error.Dan 发表于 2020-11-11 11:23
人类的语言要在计算机系统里面显示出来是需要底层支撑的,目前一般会遇到的问题基本上都集中在两个层面:
一 ...

目前显示字符最全的字体是哪个呀,我就知道花园明朝体,日本人搞的,汉字支持很全大约8万多个。还有更全的吗?

出30入25汤圆

发表于 2020-11-11 12:04:34 | 显示全部楼层
不能假设编辑器可以处理所有的non-ASCII字符。不能处理是很正常的。

对于C/C++这种语言基因上对源代码的字符编码缺少约束的语言,建议在写字符串字面量的时候,一律使用ASCII+转义的方式来写。
这样既能避免编辑器、代码管理工具等可能造成的乱码等使用问题,又可以显式的表明编码方式。

用楼主位的例子:Pripájanie ,其中`á`的码点是U+00E1,如果使用UTF-8编码则是 0xC3 0xA1 。所以代码可以写成:
str[] = "Prip\xC3\xA1janie"

出30入25汤圆

发表于 2020-11-11 12:06:06 | 显示全部楼层
takashiki 发表于 2020-11-11 11:57
目前显示字符最全的字体是哪个呀,我就知道花园明朝体,日本人搞的,汉字支持很全大约8万多个。还有更全 ...

Adobe的“思源宋体”和“思源黑体”。
这是一种“泛CJK”字体,可以处理几乎所有Unicode中规定的东亚字符,极尽详尽,不会缺字。
并且这个字体是开源的,无版权之虞。

出110入0汤圆

发表于 2020-11-12 09:41:06 | 显示全部楼层
思源字体+UTF-8

Keil使用UTF-8有版本差异,有些版本需要UTF-8-BOM的编码格式

少量字符的话,建议使用楼上的方法:ASCII+转义
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-1 18:18

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表