GB2312和GBK每一个汉字由2个字节组成,这2个字节的ASCII码大小分别是:
gb2312:high8 = 0xa1-->0xfe (161 - 254)
low8 = 0xa1-->0xfe (161 - 254)gbk:high8 = 0x80-->0xfe (128 - 254)
low8 = 0x40-->0xfe (64 - 254)
GB2312和GBK的区别:
汉字ASCII对照表的打印方法:
// 打印ASCII汉字编码表for(int i = 129; i < 256; ++i) // 129 = 0x81 { for(int j = 64; j < 256; ++j) // 64 = 0x40 { char pchar[3]; pchar[0] = i; pchar[1] = j; pchar[2] = '/0'; cout << pchar << " " << i << "," << j << " "; }}
知道一个汉字,输出其ASCII码:
// 知道一个汉字,获取其ASCII编码char * pchar = "中";//需要先把pchar的每个字符转成unsigned char,// 直接用int i = pchar[0],得到的是负值unsigned char ci = pchar[0]; int i = ci;unsigned char cj = pchar[1];int j = cj;cout << pchar << " " << i << "," << j << endl;// 输出214,208
知道汉字的ASCII码,输出汉字:
// 知道汉字的ASCII码输出汉字char pchar[3];pchar[0] = 214;pchar[1] = 208;pchar[2] = '/0';cout << pchar << endl;