C 基礎的不能再基礎的學習筆記 型別轉換

2021-08-15 02:23:05 字數 804 閱讀 1845

一、隱式轉換

int ival = 3.14 + 3;
在執行上述語句時,編譯器先將int型別的3轉換為double型別,之後相加,再將所得結果轉換為int型別初始化ival。

顯然,這裡的型別轉換無須程式設計師的介入,稱之為隱式轉換

1. 算術轉換

算數轉換就是將一種算術型別(寬度小的)轉換為另一種算術型別(寬度大的)。

2. 其他隱式型別轉換

① 陣列轉換成指標

在大多數用到陣列的表示式中,陣列 自動轉換成 指向陣列首元素的指標。

② 指標的轉換

常量整數值0 和 字面值nullptr 可以轉換為任意型別的指標。

而指向任意非常量的指標能轉換成 void*,指向任意物件的指標能轉換為const void*。

③ 轉換成bool型別

若算術型別和指標型別值為0,則為false,值為1,則為true。

二、顯示轉換

顯示轉換也就是我們所說的強制型別轉換

乙個命名的強制型別轉換有如下格式:cast-name (expression)

其中,type是目標型別expression是要轉換的值,而cast-name指定了執行的是哪種轉換(共 static_cast、dynamic_cast、const_cast、reinterpret_cast 四種)。

由此,在**中,堅決不要出現隱式轉換,盡量杜絕出現顯示轉換。

C 基礎的不能再基礎的學習筆記 復合型別

復合型別是基於其他型別定義的型別。c 中最常用的復合型別是引用和指標。一 引用 引用是給物件起的別名,它代表了物件,但它不是乙個物件。一般在變數初始化時,初始值會被拷貝到新建的物件中,然而在定義引用時,程式將引用和它的初始值繫結在一起,一旦初始化完成,引用將和它的初始物件一直繫結在一起,無法令引用重...

Linux基礎命令 最基礎的,不能再少了

一 首先說一下linux的基本最基本的就是開啟終端了,一般redhat的終端右鍵選單裡面就有,ubuntu的終端需要開啟選單在裡面尋找,不過可以拖桌面上比較方便。二 開啟了終端以後會看到shell程序的介面,比如root localhost 這個是redhat一般的開啟介面,ubuntu 需要自行獲...

C 基礎學習筆記 類模板

一 類模板 1 類模板作用 語法 template typename t class 類名 解釋 include include using namespace std class person tyname name tyage age intmain 2 類模板與函式模板的區別 1.類模板無法使...