关于Long long int, long int ,int 和short int的长度大小区分

如题所述

在编程世界里,基础语法的精确理解至关重要,尤其是在C语言中。尽管谭浩强老师的《计算机C语言编程》曾引发过一些误解,但让我们聚焦于真正的编程规范。标准的main函数写法应该是这样的:


int main(void)


{


// statement


return 0;


}


--------------------


现在回到主题,探讨int及其变体的位长差异:


1. long long int:专为64位系统设计,占用64位(1byte = 8bit),是所有类型中最长的。


2. long int:长度为long long的一半,即32位,但不是所有系统都支持32到64之间的任意值。


3. short int:比long int更短,为16位,是long的二分之一。


4. int:位长取决于机器字长,一般为16或32位。在32位机器上,int表示32位,但64位机器上,其长度并不固定,需要具体环境来确定。


关于primer书中提到的“short int可能占用更少存储空间”,这并不总是成立,因为int的长度也可能为16位,此时short int的存储优势就不明显了。老外大牛们的严谨性,确实值得我们学习和敬佩。


在使用int时,如果在某机器上与long int等价,选择long int有其理由。当程序在16位机器上运行时,int的16位长度可能导致移植问题,破坏了C语言的易移植性原则。


这些基础知识对初学者来说至关重要,而对于计算机高手来说,这可能已经是常识。但不论你是哪一类,理解和掌握这些细微差别都是提升编程技能的基石。


注:以上内容旨在提供教育指导,具体实现和移植策略可能因平台和编译器而异。

温馨提示:答案为网友推荐,仅供参考