data type range

数据类型一直都是麻烦事,看到剑指Offer上判溢出拿了范围更大的long long int来装可能溢出的int,于是总结各种数据类型的范围

int = long
unsigned int= unsigned long

这两中是最熟悉的,32bit 有符号位 -2^31~2^31-1 补码范围多一位,因为归到正数那边了,long 这个和他一样,不知道搞个这个出于什么目的。

long long 则是翻了一倍,64bit,unsigned long long 自然是 2^64-1 对应的数据范围,所以这个其实比较好理解,

double 则可以表示到10^308此方(1.79769e+308 ~ 2.22507e-308),long double则可以惊人的1.18973e+4932 ~ 3.3621e-4932

主要指导用long long 来处理范围更大的数据就可以了,2^31-1 好像是2147483647,大概12位,2^32-1是经典的4294967295,google直接计算很舒服,2^64-1是1.8446744e+19,20位,应该足够大了。

整数int,longlong
http://www.cnblogs.com/xiangshancuizhu/archive/2010/12/12/1903719.html
包含浮点数double long double等
http://blog.csdn.net/xuexiacm/article/details/8122267

Posted by richard爱闹 - 7月 14 2014
如需转载,请注明: 本文来自 Richard