二、自增自減運算子
三、強制型別轉換運算子
四、bug解析
五、總結
運算子在我們的c語言學習中起到乙個至關重要的地位,所以學號運算子還是很有必要的。下面我們就來了解一下各種不同的運算子吧。
首先是算術運算子,算數運算子多數使用在數學程式運算中,下面是常見的幾個算數運算子:
符號解釋
優先順序結合性*乘法
優先順序3
左結合性/除法
優先順序3
左結合性%取餘
優先順序3
左結合性
()圓括號
優先順序1
左右全為整數+加法
優先順序4
左結合性-減法
優先順序4
左結合性
示例一:c=(8+3*4/2+(3+5))/2
//zouyan
#include
<
stdio.h
>
main()
按照正常的運算結果跟在dev中它的結果對比。c語言算數運算子相對於其他的運算子更好理解。
例圖:
示例二:c=10+ 4 * 5/2-(1+9)%3
//zouyan
#include
<
stdio.h
>
main()
按照正常的運算結果跟在dev中它的結果對比。
例圖:
**如下:
//zouyan
main()
然後就是自增自減運算子,自增自減這個就需要看符號位置了。
符號解釋
優先順序結合性
i++,i–
變數在前,先引用值,再自增或自減
優先順序2
右結合性
++i,–i
符號在前,先自增或自減,再引用值
優先順序2
右結合性
圖例解釋:
示例一:
//zouyan
#include
<
stdio.h
>
main()
圖例如下:
示例二:
//zouyan
#include
<
stdio.h
>
main()
圖例如下:
強制轉換主要是為了解決型別名之間因為型別不同而不能互相計算以及完成運算的問題。
格式:(型別名)(表示式)
注意:強制型別轉換時,只產生臨時值,(表示式)中的值不受影響。
示例一:
//zouyan
#include
<
stdio.h
>
main()
圖例如下:
如果在過程**現了makefile.win這個介面:
那麼就有兩種解決方法:
第一種就是:在int main()裡面加入
//zouyan
intargc
,char
*ar**
也就是:int
main
(int
argc
,char
*ar**
)
再有一種辦法就是重新建乙個專案:
(為了方便理解,我使用的中文版)步驟如下:
一般新建專案就可以解決一些問題,如果還有問題的話,那就是**的問題了。
自增自減運算子的混合運算,重點理解值的變化對記憶體儲存單元中值的影響。主要是**理解,以及邏輯理解。
我是南橙,乙個逐漸禿頭的橙子orange.
C語言運算子 (一)
c語言操作符眾多,主要包括 算術運算子 關係運算子 邏輯運算子 賦值運算子 位運算子 單目運算子 條件運算子 逗號運算子 c 語言眾多的運算子是它為人詬病的乙個原因,但也是它眾多的運算子提供了其他語言所無法比擬的優點。熟練使用運算子將使你工作中達到事半功倍的效果。由於c語言運算子很多,本節主要先講解...
C語言 運算子與 運算子
我們平時使用帶參巨集時,字串中的巨集引數是沒有被替換的。例如 輸出結果為 然而,我們期望輸出的結果是 5 20 2513 14 27 這該怎麼做呢?其實,c語言允許在字串中包含巨集引數。在類函式巨集 帶參巨集 中,號作為乙個預處理運算子,可以把記號轉換成字串。例如,如果a是乙個巨集形參,那麼 a就是...
C語言 運算子和 運算子
變數 代表 取變數的位址 變數 代表 指標型的變數 取址運算子 用來取得其運算元的位址。如果運算元 x 的型別為 t,則表示式 x 的型別是 t 型別指標 指向 t 的指標 取址運算子的運算元必須是在記憶體中可定址到的位址。換句話說,該運算子只能用於函式或物件 例如左值 而不可以用於位欄位,以及那些...