了解int與char相互轉換之前,先讓我們看一下ascii碼表。
其中數字字元對應的位置為:48 - 57。
char轉int之前,先將表示式中的每個字元都轉換成ascii碼值,再進行計算。
以下**為例,其中i3的結果符合我們的預期要求。
char c = '0';
int i1 = c; // 48
int i2 = c - 0; // 48
int i3 = c - '0'; // 0
int i4 = c + '0'; // 96
int轉char之前,先將表示式中的每個字元都轉換成ascii碼值,再進行計算。
計算出數值後,再據此轉換為字元(數值為該字元對應的ascii碼值)。
以下**為例,其中c3的結果符合我們的預期要求。
int i = 5;
char c1 = i; // 越界
char c2 = i - 0; // 越界
char c3 = i - '0'; // 越界
char c4 = i + '0'; // 5
如果想要了解string、char、char*相互轉換,請檢視我的博文《c++中string、char *、char相互轉換》。
如果想要了解string與int型別的相互轉換,請檢視我的博文《int、string 型別相互轉換》
int與char 的相互轉換
把int型別數字轉成char型別,可以使用itoa函式。itoa函式原型 char itoa int value,char string,int radix int value 被轉換的整數,char string 轉換後儲存的字元陣列,int radix 轉換進製數,如2,8,10,16 進製等。...
C 中int與string的相互轉換
一 int轉string 1.c 11標準增加了全域性函式std to string string to string int val string to string long val string to string long long val string to string unsigned...
C 中int與string的相互轉換
string to string int val string to string long val string to string long long val string to string unsigned val string to string unsigned long val str...