如果你需要较大的值(大于32,767或小于-32,767),使用长型。否则,如果空间是非常重要的(如大型阵列或多个结构),短类型的使用。此外,使用int类型。如果严格定义的溢出特点是重要的和负面的不要紧,如果你想避免在操作二进制位和字节的符号扩展的问题,使用相应的无符号类型。然而,要注意签署的组合表达式中的无符号值。
虽然字符类型(尤其是无符号字符)可以被使用作为“小''整数的使用,但由于不可预知的符号扩展和代码增加,有时这样做可能得不偿失。使用无符号字符是有益的;类似的问题,见12.1。
类似的权衡在浮点型和双精度浮点型的选择。然而,如果一个变量的指针必须是一个特定的类型,上面的规则不再适用。
如果由于某种原因,你需要申报了严格的尺寸变量,以确保这种选择适当的像C99的typedef包一些<inttypes.h>。通常这样做不仅很好的理由,是要尽量满足一些外部施加的存储解决方案,请参见问题20.3。
如果你需要更多的操作比C的内置支持大变量的类型
>> 本文固定链接: http://www.vcgood.com/archives/3665