char與int等資料型別的強制轉化

2021-06-29 08:28:53 字數 759 閱讀 7570

1.首先char與int都分為signed與unsigned型別,預設情況下都是signed型別。

2.從長位元組資料型別轉換為短位元組資料型別,會產生截斷:

如從4位元組的int型別轉換成1個位元組的char型別,則取int資料的最低的乙個位元組,將這個位元組的資料賦給char型資料,且是有符號的,即首位為符號位;而如果是從int轉換成unsigned char型別,則整個乙個位元組都是資料,沒有符號位。

#include int main()

輸出結果為:

2.從短位元組型別轉換為長位元組型別

從char轉換為int:則在前面的三個位元組補符號位,即補上0xffffff(char的首位為1),或0x000000(char的首位為0)。

從unsigned char轉換為int,則前面補上0x000000.

3.ascii碼為1個位元組,而第一位為符號型別。其非負數範圍為0-127。

在此範圍內的字元,強制轉換為int之後,都可以得到其對應的ascii值。

如:char a=78;

int b=(int)a;

cout<

char與int資料型別轉換

char 資料型別 和 character 物件封裝的值 基於原始的 unicode 規範,將字元定義為固定寬度的 16 位實體。unicode 標準曾做過修改,以允許那些其表示形式需要超過 16 位的字元。合法 點 的範圍現在是從 u 0000 到 u 10ffff,即通常所說的 unicode ...

MySQL資料型別之char與varchar

測試環境 mysql 5.7.17 各位dba同事及開發童鞋,相信你們看了這篇文章,會徹底明白char與varchar應該如何去選擇使用。首先講解一下char與varchar。char n n的最大值為255 varchar n n的理論最大值65535,其實也就最多65532 這裡需要注意,在my...

資料型別 string與char 的轉換方法

在 資料結構 棧與佇列part2 棧的應用之表示式轉換 中,儲存表示式的資料型別是string型別,而atof 函式是將char型別轉化為浮點數的函式。因此,將string轉化為char的方法是非常重要的。查閱資料 c string轉char 1 include2 include3 include4...