C 資料型別轉換

2021-10-05 14:45:20 字數 399 閱讀 3809

自動轉換

若參與運算量的型別不同,則先自動轉換成同一型別,然後進行運算。

具體的轉換規則:

轉換按資料長度增加的方向進行,以保證精度不降低

若兩種型別的位元組數不同,轉換成位元組數高的型別

位元組數相同,且一種有符號,一種無符號,則轉換成無符號型別

浮點運算都是以雙精度進行的(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...