请教一个C语言问题 char a[2]="我" 数组里是汉字"我"的什么码(区位吗?内码?还是什么码)

我现在做C语言汉字点阵的程序,但是各种汉字编码分不清,希望大家指教
不过是数组,能装得下

第1个回答  2007-03-24
char只能是8位的字符,不能是16位的汉字
第2个回答  2007-03-24
unicode码

请教一个C语言问题 char a[2]="我" 数组里是汉字"我"的什么码(区位吗...
char只能是8位的字符,不能是16位的汉字

在C语言中怎样获得汉字编码?
C语言支持ASCII,而GB2312与ASCII是兼容的,所以可以在C语言中获得汉字的GB2312编码GB2312是两个字节的,第一字节是高八位,第二字节是低八位,比如下面的程序: #include<stdio.h>#include<string.h>int main(){ char a[5]; strcpy(a,"啊"); printf("%XH %XH\\n",(unsigned char)a[0],(unsigned char)...

C语言和汉字编码的问题 求教
为了区别于普通ASCII码,汉字编码一般在ASCII码之外,或者是两字节的第一字节在其之外,方法就是在汉字区位码上加一个固定的数字。但汉字有多套编码,互相不通用,可百度汉字编码了解详细信息。为了显示汉字内码,可以在字符串中判断是否遇到汉字内码,如果是再按照编码规则解出汉字的区、位码,或者直接显示...

c语言如何统计汉字个数
C中的汉字用“机内码”,一个汉字两字节,最高位都是1,所以可以用下列代码求得一个字符串里汉字的个数:\/\/#include "stdafx.h"\/\/If the vc++6.0, with this line.#include "stdio.h"int main(void){ char a[]="12我34们56都7是来自五a湖c四de海bfg"; int i,sum; for(...

c语言如何使用二维数组存储中文?
用char就可以储存了 include<stdio.h>int main(){char a[2][10]={"百度一下","你就知道"};int i;for(i=0;i<8;i++)printf("%c",a[0][i]);printf("\\n");for(i=0;i<2;i++)printf("%c",a[0][i]);printf("\\n");for(i=2;i<4;i++)printf("%c",a[0][...

关于c语言中判断汉字的问题
那么,为了在机器内部区分ASCII码和汉字机内码,就规定汉字的两个字节的最高为都为1.例如:汉字“啊”的汉字机内码为B0A1H 表示成双字节是这样的10110000 10100001 本程序用的就是判断最高位的方法。int is_zh_ch(char p){ if(~(p >> 8)== 0)将p字节进行移位运算,右移8位,这样,如果...

c语言整数内码是什么意思
在C语言中,整数内码是将整数类型的数值转换为计算机可识别的二进制数值。在计算机内部,所有数据都以0和1的二进制形式存储。整数内码是将十进制的整数值转换为二进制数值,以便计算机对其进行识别和处理。C语言的整数类型包括char、short、int和long等,它们的内码长度和表示范围有所不同。C语言整数内码的...

C语言 在不知道用户输入的是字母还是数字的情况下 用int 还是char...
2、输入的数据在程序里是起什么作用的?在需要接受用户不确定输入类型的前提下,如果只需要输入一个字符或者一个数字,使用int类型比较简单,不容易发生错误,使用单个字符变量,输入缓冲区里的字符有时候会对输入产生影响。但此时获取到的是字符内码,作为字符应用时需要按内码处理。而且在程序内,仅仅根据...

C语言中汉字也有类似ASCII码的东西么?
1、ASCII是用8位二进制表示的,但最高位是0,一个字符一字节。中文是用所谓机内码(参阅一下区位码、国标码、机内码的内容)表示的,一个汉字二字节,关键是最高位都是1。日文、韩文则是为其分配了不同的编码段。2、计算机用两个字节来表示一个汉字,“我”在内存里就是这样存放的:CE D2。CE...

急!c语言如何显示汉字
而对于中文,常用却有5000以上,于是我们的DOS前辈想了一个办法,就是将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内码。不信,你可以用记事本写一C文件:main(){ unsigned char *s,*e="ABcd",*c="你好"; clrscr(); printf("...

相似回答