C語言中的表示式怎麼分類?

時間 2021-10-16 09:02:44

1樓:C十十20年

首先分為兩大類:型別表示式和數值表示式。型別表示式常用在new的後面,以及作為型別實參例項化模板,參見《C++程式設計精要教程》。

例如new int[4][4]中的int[4][4]便是型別表示式,還有一種函式型別表示式如int(int,int)等。數值表示式是能計算出數值的表示式,包括布林值、算術值、指標值以及物件值等。按值分類可分為常見的布林表示式、關係表示式、算術表示式。

而按計算結果能否再被賦值分類,可分為傳統左值表示式如++x、x=3等,以及傳統右值表示式如x++、x+3等。數值表示式按使用的運算子分類,可分為如括號表示式(3)、逗號表示式2,3、以及賦值表示式如x=3或x+=3等等。還有一種分類是按計算結果是否為常量分類,可以分為常量表示式和任意值表示式,常量表示式如2+3、3+sizeof printf("%d", x)。

任意值表示式簡稱任意表示式,常見的表示式如x、x+3、3+printf("%d", x)等等。具體分類和用途參見上述教程,不同的分類方法各有其用途。

2樓:劉欖

有點多了。。。可以看看 C Programming Language (C89) 或者 C99 標準文件,總結起來如下:

主要表示式、字尾表示式、一元運算表示式、型別轉換表示式、乘除表示式、加減表示式、位操作(左右移位)表示式、關係運算表示式、等號(等與不等)表示式、按位與表示式、異或表示式、按位或表示式、邏輯與表示式、邏輯或表示式、條件表示式(三目運算)、賦值表示式、逗號表示式

優先順序從左至右依次遞減

在c語言中,表示式5 3的結果是什麼?

正常思路 由於邏輯運算子優先級別低於比較運算子同時這兩種都低於算術運算子,因此先考慮後半部分,4 0真值為1,而8 1的真值為0.再考慮或左邊的表示式,5 3 2顯然真值為1最終結果為1 0當然結果為12 有 將表示式分成兩部分左邊的是5 3 2顯然其真值為1因此1 任意真值都為1不用算後面的了。真...

應該怎麼練習使用正規表示式?

鵬鵬李李 這個問題我來回答 我是自己搞了乙個object parse string 這麼一套庫,然後tokenizer longlongstring 的 其中基本資料型別的全是用string型別,當時我就想到用正規表示式來表示資料型別,也就是元資料。而且這個方案嚴謹性還算不錯,就是匹配處理速度太慢了...

如何用正規表示式表達2020 10 1的日期,求各位大佬指點,挺急的 ?

1 9 0 9 1 9 1 0,1,2 1 9 1 0 9 2 0 9 3 0,1 上述回答基於以下幾個限制 1.年月日開頭的0不寫 2.填寫人自己不要瞎寫日期,比如2000.2.31和2001.2.29,顯然不是正確日期,但我給的正則會識別為真 劉長元 從你的問題描述來看,我感覺你對正規表示式的理...