官术网_书友最值得收藏!

3.6 運算符總結

上面我們已經學習了多個C語言的運算符,為了更好地學習理解這些內容,本節將對運算符進行總結。

3.6.1 運算符優先級匯總

運算符優先級決定了計算機的運算順序。只有正確使用運算符,才能保證計算機的正確識別和運算。運算符優先級匯總如表3.8所示。

表3.8 運算符優先級匯總

續表

3.6.2 數據類型轉換規則

在C語言中,當對操作數進行計算或存儲時,都要保證所有操作數的數據類型相同。如果操作數的數據類型不同,就要對操作數進行數據類型轉換。在對操作數進行數據類型轉換時,一定要注意以下規則。

(1)如果參與運算的操作數的數據類型不同,則要先將其轉換成同一個數據類型,才能進行運算。

(2)必須是所占存儲單元少的數據類型向所占存儲單元多的數據類型轉換,并保證數據類型轉換后的數據精度不降低。這就好比一般要將房子換成更大的房子,而不要換成更小房子一樣。

(3)若兩種數據類型所占的字節數相同,且一種數據類型有符號,另一種數據類型無符號,則要將有符號數據類型轉換成無符號數據類型。

(4)所有的小數運算都是以雙精度類型進行的。

(5)當char類型和short類型數據參與運算時,必須將它們都轉換成int類型后再進行運算。

(6)在賦值運算中,當賦值運算符兩邊操作數的數據類型不同時,計算機會自動將右邊操作數的數據類型轉換為左邊操作數的數據類型。在這個轉換過程中,如果左邊操作數所占存儲單元少于右側操作數所占存儲單元,則會降低轉換后數據的精度,并丟失部分數據。

(7)數據類型在強制轉換時,要注意強制轉換后的數據所占存儲單元的多少,避免存儲時數據發生溢出,造成數據丟失。

在C語言的中,數據型轉換方向如圖3.32所示。

圖3.32 數據類型轉換方向

主站蜘蛛池模板: 永修县| 洪洞县| 兴山县| 涪陵区| 南阳市| 霍林郭勒市| 涞源县| 清苑县| 客服| 科技| 临夏市| 龙泉市| 舞钢市| 新晃| 武清区| 永新县| 红安县| 黄浦区| 多伦县| 基隆市| 仁布县| 确山县| 东阿县| 永平县| 合作市| 安顺市| 新沂市| 前郭尔| 皋兰县| SHOW| 滦南县| 长白| 牡丹江市| 凤冈县| 米易县| 南召县| 家居| 瑞丽市| 开江县| 潍坊市| 滨海县|