型別轉換相關知識點

2021-09-27 03:09:36 字數 991 閱讀 2684

型別轉換規則(均以補碼形式運算):

當賦值運算子兩側的資料型別不同時,需進行型別轉,系統會自動進行轉換。

1、float、double型賦給int型:直接截斷小數。

2、int、char型賦給float、double型:補足有效位。

3、char型賦給int型:數值賦給int型的低8位,其他位補0。

4、long long型賦給int型:截斷低位給int型。

5、int型賦給long long型:賦給long long型的低32位,如果int型最高位是0,則long long型的高32位全為0,否則全為1。

(補碼運算)

6、unsigned int型賦給int型:直接傳送數值。

7、非unsigned int型賦值給位數相同的unsigned int型:直接傳送數值。

型別轉換規則個人理解:

1、低->高  補足

2、高->低 擷取

3、float->整形 去掉小數字

4、具體整數 視作 int

5、(long long)int+int  第1個int強制轉換成long long,第2個仍是int,然後兩者加起來。如果後面的int運算時超過int,則需要擷取。

仔細研究下面的兩段**,仔細體會型別轉換規則:

**一:

#include#include#includeusing namespace std;

char a;

int b;

long long c;

float d;

double e;

unsigned int g;

int main()

**二:

#include#include#includeusing namespace std;

int main()

相關知識點

nweb inf uclasses uweb.xml ulib n 從httpservlet 繼承,重寫doget dopost方法 n部署web.xml n 只有乙個物件 n 第一次請求的時候被初始化,只一遍 n 初始化後先呼叫init 方法,只一遍 n 每個請求,呼叫一遍service serv...

列舉型別相關知識點(騰訊面試)

官林輝c語言或c 的一種構造型別,它用於宣告一組命名的常數。1 列舉的宣告 列舉宣告用於宣告新的列舉型別。訪問修辭符 enum 列舉名 基礎型別 基礎型別必須能夠表示該列舉中定義的所有列舉數值。列舉宣告可以 顯式地宣告 byte sbyte short ushort int uint long 或 ...

C 資料型別轉換知識點

include using namespace std class father 基本型別 類型別 include using namespace std class myclass 基本型別 類型別 void operator int num 類型別 基本型別 operator int void ...