自動轉換
若參與運算量的型別不同,則先自動轉換成同一型別,然後進行運算。
具體的轉換規則:
轉換按資料長度增加的方向進行,以保證精度不降低
若兩種型別的位元組數不同,轉換成位元組數高的型別
位元組數相同,且一種有符號,一種無符號,則轉換成無符號型別
浮點運算都是以雙精度進行的(float都要轉換成double在進行運算 )
char型和short型參與運算時,必須先轉換成int型
賦值運算中,賦值號兩邊量的資料型別不同時,賦值號右邊量的型別將轉換為左邊量的型別。如果右邊量的資料型別長度比左邊長時,將丟失一部分資料,這樣會降低精度
強制轉換
一般形式為:(型別說明符)(表示式)
C 資料型別轉換
轉cstring cstring.format t d int 轉char 1.itoa int,char 10 10為十進位制 沒有越界檢查 2.memset szbuf,0,sizeof szbuf snprintf szbuf,sizeof szbuf d int 轉tchar itoa in...
c 資料型別轉換
隱式型別轉換 這些轉換是 c 預設的以安全方式進行的轉換,不會導致資料丟失。例如,從小的整數型別轉換為大的整數型別,從派生類轉換為基類。轉換規則從儲存範圍小的型別到儲存範圍大的型別。整數具體規則為 byte short char int long float double也就是說byte型別的變數可...
C 資料型別轉換
include include using namespace std 從型別t轉換為型別k template classt,class k k convert t tmp intmain home hejinyang clion2016.2 system cmake generated mypro...