我是靠谱客的博主 时尚板凳,最近开发中收集的这篇文章主要介绍字符编码方式的比较,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.       ASCII编码:它用7位二进制数进行编码,可以表示128个字符。字符数据以ASCII码的形式存放在内存中,其存储形式和整数的存储形式在本质上是相同的。一个字符数据可以以整数的形式输出,也可以以字符的形式输出。如果把一个字符以字符的形式输出,需要把存储在内存中的ASCII码转换成相应的字符,然后输出;如果是以整数形式输出,那么就可以直接将ASCII码作为整数输出。同样,对字符数据进行算术运算也就相当于对它们的ASCII码进行算术运算。ASCII码能表示汉字。

2.       GB2312编码:它包含了6000多个汉字,此外还收录了常见的数学符号、罗马和希腊字母等。它采用两个字节来表示一个汉字。由于ASCII码占用7位,所以这种汉字编码方式规定:对于连续的两个字节,只有在两个字节的第7位都是1的情况下,才认为这两个字节合起来表示一个汉字。GB2312ASCII兼容。

3.       Unicode编码Unicode使用16位来统一表示所有的字符,对于ASCII里的那些半角字符,Unicode保持其原编码不变,只是将原来的8位扩展为16位。这样一来,所有的字符都固定占用两个字节。Unicode在制定时没有考虑与任何一种现有的编码方案保持兼容,这使得GBKUnicode在汉字的内码编排上时完全不一样的。没有一种简单的算法可以对文本内容进行Unicode编码和另一种编码的转换,这种转换必须通过查表来进行。Unicode编码可以表示汉字。

 

 

    通过下面的方式可以证明汉字是占两个字节的。

    char *ptr1="中国人";
 printf("%d/n",strlen(ptr1));
 char *ptr2="chinese";
 printf("%d/n",strlen(ptr2));

    上面的输出结果分别是6和7。所以一个汉字是占两个字节的。

最后

以上就是时尚板凳为你收集整理的字符编码方式的比较的全部内容,希望文章能够帮你解决字符编码方式的比较所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部