关于C语言里面的不同计算机系统对于不同的变量分配不同的字节数,请教达人

我感觉书上每次都是说“计算机系统不同,分配的字节数不同”,然后紧跟着的举例子就是大讲特讲TC或者VC,那按照这个理解下去,计算机系统应该指的是编译环境吧,就是不同的软件,TC、VC之类的,但是它这样说不会让人产生误解吗,一般人的“系统”概念就是联想到windows,linux之类的词语去了。
请问怎么回事啊

你说的windows,linux那是操作系统,书上说TC,VC那是编译器。比如,int大小主要由编译器决定和cpu地址总线决定,起决定作用的就是编译器,他定了int是4个字节那就是4个,他定int是2个那就是2个字节。那为什么为什么TC是2个,vc是4个?主要是因为编译器定int是几个字节的时候还要考虑cpu的地址总线既寻址能力。TC是老编译器,那个时代的电脑是16位的,因而TC定int的大小为2个字节,不过那时TC定int为4个字节也是可以,TC定int为2字节就是综合考虑了cpu的寻址能力定的。现在是32位的,综合考虑一般编译器定int为4个字节。以后64出了之后,int有可能还会变,这个不一定的。明白些了么?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-09
这里讲的系统应该是操作系统对于int类型和long在不同操作系统分配的空间是不同的。这里分有16位、32位、64位操作系统。
相似回答