C语言中的一个小问题。。

short为16位,long为32位,int为16位是什么意思啊?各位大神帮忙解释一下!

上面几位回答的都挺好的,简单的说你可以把他们都理解为存储数字的容器。long肯定能装下最多的,int就少,
除此之外,
就是能不能处理小数点后面数字的问题了,集体情况你可已在写代码的时候试一下,加深印象,

计算机只能识别0和1. 还有,int 一般是32位,long一般是64位。 一个整数如5这个数,如果是short型 那么在计算机中表示为0000000000000101
就是由16个0或者1表示一个整数。

8位二进制是一个字节,int有4个字节也就是32位,每一位可以取值0或者1,机器码

int 的范围是-2147483647 ~ 2147483647,一共可以表示2^32-1个数,我们就叫它32位整型变量,而short是-32767 ~ 32767,一共2^16-1个数,所以叫16位整型变量

就是说这种编译器下每种数据类型占用存储的大小。16位就是2个字节。
你可以用sizeof(类型)*8得到。每个编译器不同。
比如你这个int是16bit的就是老黄历了。VC++ 6.0下int就是32bit的。

谢谢大家的帮助,我的问题已经解决了。

刚发现我的回答被选为最佳答案了,其实我也是新手了,刚才回答不够严谨,准确说能不能处理小数点后面数字的问题要在全部数字类型中考虑,
而不是仅仅在long,short,int(整型)这几个中,还要加上double和float(浮点型)