日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言整行乘非整形等于什么意思,C语言--整形升级寻常算术转换

發布時間:2024/9/27 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言整行乘非整形等于什么意思,C语言--整形升级寻常算术转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【三個概念】

1.表達式:

由運算符、變量和常量組成的具有一個確定結果(值)的一個式子。

-->算術表達式:如 x + 5 * y

-->關系表達式:如 x >= 5, x == 8

-->邏輯表達式:與、或、非,&& || ~

-->賦值表達式:如 x = y +7

-->條件表達式:如 x > y ? 1 : 0

-->逗號表達式:有逗號運算符的表達式

求解表達式:①混合運算規則;②優先級規則;③ 結合性規則。

2.語句:

指的是當程序運行時執行某個動作的語法結構。它改變變量的值,產生輸出,或處理輸入。C語言包括4類語句:

-->表達式語句:末尾加上分號,expression;如,函數調用語句和賦值語句

-->語句塊:由大括號{}括起來的一系列語句

-->空語句:只有一個分號

-->控制語句:3類,循環語句,選擇/條件語句,特殊語句(return,continue,break)

3.算術運算:

二元算術運算符:加減乘除取模,+ - / * %

一元算術運算符: + -,強調數的正負

【整形升級】

也稱類型提升,是指:

char, shaort int或者int型位段(bit-field),包括它們的有符號或無符號變型,以及枚舉類型,可以使用在int或unsigned int的[!表達式!]]中。

如果int可以完整表示源類型的所有值,那么該源類型的值就轉換為int,否則轉換為unsigned int。

【尋常算術轉換】

當執行[!算術運算!]時,操作數的類型如果不同,就會發生轉換。

規則:

①若其中一個是long double類型,另一個也被轉換成long double;

②若其中一個是double類型,另一個也被轉換成double;

③若其中一個是float類型,另一個也被轉換成float。

若不滿足上述三條,則兩個數進行整型升級:

①若其中一個是unsigned long int類型,另一個也被轉換成unsigned long int;

②若其中一個是long int類型,另一個是unsigned int,

如果long int能夠完整表示unsigned int的所有值,那么unsigned int轉換為long int,

如果long int不能夠完全表示unsigned int所有值,那么兩個操作數都被轉換成unsigned int。

③若其中一個是 long int 類型,另一個也被轉換成long doublelong int;

④若其中一個是 unsigned int 類型,另一個也被轉換成unsigned int;

⑤若以上四條都不滿足,則兩個數都轉換成 int。

【K&R C和ANSI C區別】

K&R C:無符號保留原則,當一個無符號類型與int或更小的整型混合使用時,結果類型是無符號類型。

ANSI C:值保留原則,操作數類型不同就進行轉換,朝著浮點精度更高,長度更長的方向轉換。

【總結】

通常情況下,在對int類型的數值作運算時,CPU的運算速度是最快的。在x86上,32位算術運算的速度比16位算術運算的速度快一倍。

C語言是一個注重效率的語言,所以它會作整型提升,使得程序的運行速度盡可能地快。

因此,你必須記住整型提升規則,以免發生一些整型溢出的問題。

總結

以上是生活随笔為你收集整理的c语言整行乘非整形等于什么意思,C语言--整形升级寻常算术转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。