在32位的机子里,一个地址应该是包含四个字节吧,那么char类型是不是还是8位呢,如果是,那么譬如我定义一个指针
char c[] = 'abc';
char *ch = &c;
这样*(ch++)应该是指向下一个地址,值为b,这就跳过了3个字节(一个地址有四字节),如果说“b”这个值放在“a”字节的下一个字节,那他应该没有地址对应,*(ch++)就得不出字符b了。总结下问题,32位机里char类型是占一字节还是四字节?如果是一个字节,字符数组的相邻字符会不会隔着3个字节?
教用char类型的时候说它体积小,但我想如果8位以上的机用它不能省内存的话,字符以外的数我就不会再用char类型了
多谢解答
Si'yang Huo:
回复 Forrest:
明解,谢谢