翻到了自己曾经做的笔记,觉得基础但是重要,记录下来:

short int 的取值范围是-32768~32767.


unsigned int:  0~4294967295   


int: -2147483648~2147483647   --> 10位数(简单认为2后面9个0)  足以表示2^31-1


unsigned long 0~4294967295   --> 2^32-1


long: 2147483648~2147483647


__int64、long long的最大值:9223372036854775807  --> 19位数(简单认为9后面18个0)


__int64、long long的最小值:-9223372036854775808


unsigned __int64、unsigned long long的最大值:18446744073709551615  -->2^64-1  20位数




关于 float与double:


        指数位    位数位


float   8  bits   23bits


double  11 bits   52bits




float: 2^128=340282366920938463463374607431768211456 -->39位


float: 2^23=8388608  -->7位数 精确至小数点后6位


2^11/2=1024


double: 2^1024=  


1797693134862315907729305190789024733617976978942306572734300811577326


7580550096313270847732240753602112011387987139335765878976881441662249


2847430639474124377767893424865485276302219601246094119453082952085005


7688381506823424628814739131105408272371633505106845862982399472459384


79716304835356329624224137216   -->309位


double: 2^52=4503599627370496  -->16位数字,精确至小数点后15位



相关数据:



In[3]:= 2^8



Out[3]= 256



In[4]:= 2^16



Out[4]= 65536



In[5]:= 2^32



Out[5]= 4294967296



In[6]:= 2^64



Out[6]= 18446744073709551616



In[7]:= 2^128



Out[7]= 340282366920938463463374607431768211456



In[8]:= 2^256



Out[8]= 11579208923731619542357098500868790785326998466564056403945758\


4007913129639936



In[9]:= 2^1024



Out[9]= 17976931348623159077293051907890247336179769789423065727343008\


1157732675805500963132708477322407536021120113879871393357658789768814\


4166224928474306394741243777678934248654852763022196012460941194530829\


5208500576883815068234246288147391311054082723716335051068458629823994\


7245938479716304835356329624224137216