#include <iostream>
using namespace std;
int main()
{ char a; unsigned char b; for (int i = 0; i < 256; i++) { a = (char)i; b = (unsigned char)i; printf("a:%d\n",a); printf("b:%d\n",b); // if (a != b) cout << i << endl; } int d = 0x999; int c = 0x12; char e; e = (char)d; printf("%c\n",e); printf("%d\n",e); printf("%c\n",c); printf("%d\n",c); return 0; } 上面的例題已經(jīng)說明了一部分,,下面再對以前理解的字符型的誤區(qū)進(jìn)行闡述。
原來一直以為符號型就是為了ASCII碼規(guī)定的那256個符號,,因此當(dāng)遇到有符號字符型時就不知道為什么了,,不知道為什么會帶符號。
現(xiàn)在我對符號型有了更加深入的認(rèn)識,,符號型不僅僅有代表ASCII碼規(guī)定的256個字符的功能,還有其他功能,。比如定義一個int型,,它占4個字節(jié),但是需要取它的最低1個字節(jié),,因此就可以將它強(qiáng)制類型轉(zhuǎn)換成char型,。我認(rèn)為char型更大的作用是代表一個字節(jié)。
char型又分為unsigned char和char兩種,,因此轉(zhuǎn)換時就要注意到底要轉(zhuǎn)換成哪種類型,,因此它們的取值范圍不同。
|
|
來自: dingzi4178 > 《程序語言》