200c型atp数据为什么,为中车时代电气全资子公司( 二 )


上面几种整数类型与 char 类型的区别主要在于占用的存储空间不同,但是究竟这几种整型类型占几个字节,C语言标准没有规定,所以在不同架构的计算机中,这几种类型占用的空间可能不同 。例如在大多数 32 位计算机中,这几种数据类型占用的字节数分别为 2,4,4,8 。而在大多数 64 位计算机中,这几种数据类型占用的字节数分别为 2,4,8,8 。
除了 char,其他几种整型类型如果定义时没有写符号,则默认为是有符号的 。浮点型C语言标准规定的浮点型有 float,double,long double,但是对每种数据类型占用的存储空间却没有规定 。浮点型的实现在不同的平台上的差异性比整型更大 。有的处理器自带的有浮点运算单元,称为浮点运算的硬件实现 。
有的处理器没有,只能用整型运算模拟,这称为浮点运算的软件实现 。我们在C语言编程时应选择最合适的数据类型 。例如某个变量的变化范围是 0~100,那选择 char 类型就足够了(无论有没有符号),选择 long 类型会导致性能下降,原因在我之前的文章里已经解释过 。如果某个变量的变化范围可能超过 255,那就不能选择 char 类型了,否则会造成数据溢出,例如编译并执行这段C语言代码,会得到输出:i=1 。
【200c型atp数据为什么,为中车时代电气全资子公司】C语言程序中的数据溢出,可以借助计算器直观的看出,请看下图:C语言的数据类型转换C语言中的基本运算,如 -* /%这些算术运算以及

推荐阅读