C语言获取汉字机内码、区位码、国际码:
#include<stdio.h>
void main(void) {
unsigned char temp[2];
scanf(“%s”,temp);
printf(“机内码高字节是0x%.2x\n”,temp[0]);
printf(“机内码低字节是0x%.2x\n”,temp[1]);
printf(“区位码区码是%2d\n”,temp[0]-0xa0);
printf(“区位码位码是%2d\n”,temp[1]-0xa0);
printf(“国际码高字节是0x%.2x\n”,temp[0]-0x80);
printf(“国际码低字节是0x%.2x\n”,temp[1]-0x80);
}
1.3 Unicode
Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。
Unicode只有一个字符集,中、日、韩的三种文字占用了Unicode中0x3000到0x9FFF的部分 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, 比如汉字"经"的编码是0x7ECF,注意字符码一般用十六进制来 表示,为了与十进制区分,十六进制以0x开头,0x7ECF转换成十进制 就是32463,UCS-2用两个字节来编码字符,两个字节就是16位二进制, 2的16次方等于65536,所以UCS-2最多能编码65536个字符。 编码从0到127的字符与ASCII编码的字符一样,比如字母"a"的Unicode 编码是0x0061,十进制是97,而"a"的ASCII编码是0x61,十进制也是97, 对于汉字的编码,事实上Unicode对汉字支持不怎么

2&spm=1001.2101.3001.5002&articleId=137464929&d=1&t=3&u=d8dd531074954b87b8e28f2dd7e87dd9)
319

被折叠的 条评论
为什么被折叠?



