C語言中的型別轉換

2021-08-31 13:33:27 字數 830 閱讀 4411

資料型別(窄->寬):char,short,int,long,float,long long,double

規定:同型別的資料無符號比有符號寬。

一、隱式(預設)轉換:

1、窄型別轉寬型別,左邊補符號位,無符號數左邊補零 (寬窄型別依據的是位元組數長短)。

2、強制將寬型別轉成窄型別,保留低資料

二、顯式(強制)轉換:顯式型別轉換又叫強制型別轉換,直接將某資料轉換成指定的型別,這在很多情況下可以簡化轉換。例如

int i;

...i=i+9.999

按照隱式處理方式,首先將i轉換為double型,然後相加結果為double型,再將double型轉換為整型賦給i。

int i;

...i=i+(int)9.999

這時直接將9.999轉換成整型,然後與i相加,再把結果賦給i。這樣可把二次轉換簡化為一次轉換。

顯示型別轉換的方法是在被轉換物件或表示式前加型別識別符號,格式為:

(型別識別符號)表示式

C語言中的型別轉換

計算機進行算術運算時,通常要求運算元具有相同的位數 相同的儲存方式。而c語言支援在表示式中混合使用基本資料型別,因此需要在不同的資料型別之間進行轉換。在c語言中存在兩種型別的轉換,一種是隱式轉換,由編譯器自動處理轉換而無需程式開發人員介入,另一種是強制型別轉換 顯式轉換 需要程式開發人員使用強制轉換...

C語言中的型別轉換!

自動轉換發生在不同資料型別運算時,在編譯的時候自動完成 自動轉換遵循的規則就好比小盒子可以放進大盒子裡面一樣,下圖表示了型別自動轉換的規則。縮寫 ascii 英文全稱 american standard code for information interchange 美國資訊交換標準 是一種用於資...

C語言中的型別轉換

c語言中的型別轉換可以分為兩種 隱式轉換中的規則有 窄的向寬的轉變 unsigned 同型別無符號比有符號寬 同型別的轉換例如 int a 10 unsigned int b 10 if a b printf a b else printf a不同型別的轉換例如 int c 10 unsigned ...