C 基礎 2 表示式

2021-08-07 15:31:34 字數 2003 閱讀 5346

[c++][基礎]2_表示式

2.1算術操作符

2.2關係操作符和邏輯操作符

2.3位操作符

2.4賦值操作符

2.5自增、自減操作符

2.6箭頭操作符

2.7條件操作符

eg:

inti =10, j = 20;

intmax = (i > j)  ? i : j;

2.8   sizeof操作符

sizeof

其作用就是返回乙個物件或者型別所佔的記憶體位元組數

, 其返回值型別為

size_t。

2.9逗號操作符

逗號表示式是一組由逗號分隔的表示式,這些表示式從左向右計算,但返回的結果是其最右邊表示式的值。

eg:int

i = (2+1, 3+2, 5*3);

cout

<< i

<< endl;

2.10復合表示式的求值

2.11 new

delete表示式

2.12型別轉換

2.12.1何時發生隱式轉換

在混合型別的表示式中,用作條件的表示式被轉換為

bool型別

用乙個表示式初始化某個變數,或將某乙個表示式賦值給某個變數,則表示式被轉換為該變數的型別。

eg:int

ival = 3.14;  

轉為整數

int *ip;

ip = 0;                //0

轉為指標

2.12.2算術轉換

在算術表示式中,會將運算元型別轉為表示式中的最大型別。

2.12.3強制轉換

強制型別轉換符

dynamic_cast

dynamic_cast

支援執行時識別指標或引用所指向的物件。

與其他強制型別轉換不同,

dynamic_cast

涉及執行時型別檢查。

若繫結到指標或引用的物件不是目標型別物件,失敗!若是轉換到指標失敗,則

dynamic_cast

結果是0

值,若是轉換到引用失敗,則丟擲乙個

bad_cast

異常。

const_cast

const_cast

轉換掉表示式的

const

性質。

static_cast

編譯器隱式執行的任何型別轉換都可以由

static_cast

顯示完成。

reinterpret_cast

reinterpret_cast

通常為運算元的位模式提供較低層次的重新解釋。

轉換形式

cast_type(expression);

eg:const

char* p = "hello";

const_cast

(p);

C 基礎2 表示式

算數運算子與算術表示式 求餘,兩側應為整型資料 兩個整數相除的結果為整數。可以直接定義型別為double或float,或者直接加小數點 基本運算中 有乙個float型,則結果為double型。優先順序與結合性 c 語言規定了運算子的優先順序和結合性。在求解表示式時,先按運算子的優先級別高低次序執行,...

C 正規表示式基礎

正規表示式 可以利用數學演算法解決計算機中的文字檢索和匹配問題 是一種專門用於字串處理的語言 檢索 從字串中獲取我們想要的部分 匹配 判斷給定的字串是否符合正規表示式的過濾邏輯 定位字元 string ss i am blue cat string newstr regex.replace ss,開...

c 基礎 表示式樹

在linq to objects中,擴充套件方法需要將乙個委託型別作為引數,這樣就可以將lambda表示式賦予引數。lambda表示式也可以賦予expression型別的引數。c 編譯器根據型別給lambda表示式定義不同的行為。如果型別是expression,編譯器就從lambda表示式中建立乙個...