2015年1月29日 星期四

C++ Unsigned keyword



Unsigned keyword 是一個 data type specifier, 即無符號的意思,

其只可以用於表示一個正數和0,只可應用係 char, short, int , long
的data type, 例如:

int typically 的值是 -32768 to 32767  ,那 unsigned int 的值會是 0 to 65535,
沒有負數。

當你知道變量的值永遠不會是負數,你就可以採用unsigned了。


更多說明:

一個32bit的int,會有1bit用於記住該數的正負號,但當使用了unsigned int,
則所宣告的變數只能存放正數,由於沒有正負之分,不再需要借用1bit去記
住正負號,可儲存的正數範圍就可以增加了一倍,因為數值的位元多了一位。

例如:

int 值的範圍 : -231 ~ 231-1
unsigned int 值的範圍 : 232-1  //  -1 的意思是因為要包含全0的組合。

- unsigned int 可簡寫為 unsigned
- unsigned short int 可簡寫為 unsigned short





沒有留言:

張貼留言