博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
开发环境的坑
阅读量:4653 次
发布时间:2019-06-09

本文共 1161 字,大约阅读时间需要 3 分钟。

 

编码问题:

  一个文本可以有很多种编码。

  汉字编码有:

    GB2312编码:1981年5月1日发布的简体中文汉字编码国家标准。GB2312对汉字采用双字节编码,收录7445个图形字符,其中包括6763个汉字。

    BIG5编码:台湾地区繁体中文标准字符集,采用双字节编码,共收录13053个中文字,1984年实施。

    GBK编码:1995年12月发布的汉字编码国家标准,是对GB2312编码的扩充,对汉字采用双字节编码。GBK字符集共收录21003个汉字,包含国家标准GB13000-1中的全部中日韩汉字,和BIG5编码中的所有汉字。

    GB18030编码:2000年3月17日发布的汉字编码国家标准,是对GBK编码的扩充,覆盖中文、日文、朝鲜语和中国少数民族文字,其中收录27484个汉字。GB18030字符集采用单字节、双字节和四字节三种方式对字符编码。兼容GBK和GB2312字符集。

    Unicode编码:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文本信息转换。

    UTF8编码:(包含UTF8 without BOM)是一种针对Unicode的可变长度字符编码,又称万国码。由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

  这些编码对同一个字的表示方法不一样,用错了  要么显示不出来,要么乱码。

  英文在其中很统一:ASCII 永远一个字节,所有编码里面都兼容(Unicode里面好像有变化)

 

  复制文本到KEIL 里面 或者 串口打印 的时候出现乱码的问题就是他咯。

  copy代码的时候留意一下。

 

回车换行:

  在不同环境下回车是不一样的。  Windows下一个回车按键是两个字符  \r\n    Linux 下  是   \n     Mac 下是   \r  。 有人问,为什么不统一?   历史遗留问题,无解。

  win下写 Shell 脚本到linux 为什么不能运行?   回车问题是其中一个。

  copy前 注意一下。

 

C语言的坑:

  enum 长度不固定。  跨平台的时候  悠着点。 尽量避开。

  enum 长度方面的定义是,满足 枚举值 的最小长度。  

  编译器根据运行机器会插一脚,并不是最小长度最大性能。编译器优化的时候会让这个长度变成摇色子。

  做通讯,做dll的时候     避开他,别无他选。

 

  指针大小。  不同位宽的CPU 指针长度是不一样的。   跨平台的代码 小心。

 

转载于:https://www.cnblogs.com/JiuHuan/p/9081090.html

你可能感兴趣的文章
MySQL必知必会笔记<1>
查看>>
http协议总结
查看>>
Servlet开发入门 笔记
查看>>
emqtt 试用(六)系统主题
查看>>
系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。
查看>>
在 Ubuntu 中启用 TCP BBR 算法
查看>>
LookingFastandSlow: Memory-GuidedMobileVideoObjectDetection
查看>>
Python基础(条件判断)
查看>>
Qt乱码解决办法(常量中有换行符)
查看>>
oracle 12C 使用问题二:
查看>>
archlinux清理一下空间
查看>>
Apache kylin的基础环境
查看>>
类型本质---进阶编程篇(二)
查看>>
Python学习之旅
查看>>
高级数据操作(上)
查看>>
求一个极大数的欧拉函数 phi(i)
查看>>
PHP 日期生成
查看>>
C++的学习资源
查看>>
struts.xml语法
查看>>
java 控制器向页面传值方式
查看>>