[问题] 阵列问题...

楼主: akka5678   2015-12-16 14:42:15
小弟新手,有个疑问想请教各位大神
想请问中文字在阵列里是占几个空间?
char str1[4] = {"C++"}; //这只要配四个就好,因为有包括\0
char str2[9] = {"圣诞快乐"}; //但这要配9个,所以一个字占两个空间吗?
__________________
| C | + | + | \n |
|___|___|___|____| cout << st1[1] ; //输出C
cout << str[2] ; //输出+
但str2就不能单独输出一个字,只能输出整个字串?
cout << str2[1]; //输出t ?
cout << str2[2]; //空白
cout << str2[3]; //空白
.....
cout << str2; //圣诞快乐
想请各位大神指教
作者: stupid0319 (征女友)   2015-12-16 14:48:00
中文字占两个char呀,不过Unicode的英文也是两个Google找下big5规则跟Unicode
作者: a27417332 (等号卡比)   2015-12-16 15:09:00
印象中Unicode是编码,UTF是实作方法吧印象中英文字2 byte应该也是看环境,吧(不确定
作者: LPH66 (-6.2598534e+18f)   2015-12-16 15:23:00
一个中文字几个 byte 对初学者这是大哉问这跟你的原始档、编译方式和执行环境都有关如果是 2 byte 的状况你就想成跟 BBS 一样就对了不是 2 byte 的再来问
作者: overhead (overhead)   2015-12-16 22:53:00
恩这是一个很复杂的议题 复杂到不适合新手 你可以googleunicode UTF-8 ANSI等等关键字去了解相关讯息

Links booklink

Contact Us: admin [ a t ] ucptt.com