中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言的運算符用法介紹

發布時間:2021-08-26 18:20:03 來源:億速云 閱讀:185 作者:chen 欄目:開發技術

這篇文章主要講解了“C語言的運算符用法介紹”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C語言的運算符用法介紹”吧!

目錄
  • 一、算數運算符(數學運算) 

    • + -

    • * / %

  • 二、邏輯運算符(判斷真假)

    • || &&

    • > >= < <=

    • !

    • ? : 三元運算符

  • 三、位運算符(重點) 

    • << 左移

    • >> 右移

    • & | ^ ~ 與 或 異或 取反

  • 四、賦值運算符

    • 五、內存訪問符號

      •  () 限制符/函數訪問符

      • [] 內存訪問ID符

      • {} 函數體限制符

      • -> 地址訪問符 

      • .變量訪問符 

      • &取址符

      • *取值符


    一、算數運算符(數學運算) 

    + -

    左右數據同一數據類型

    * / %

    注意

    乘/除法在很多CPU中無法實現,或者需要多個CPU周期去實現嵌入式開發中,乘/除法可能需要第三方乘法庫才能實現乘/除法可能導致程序的移植性變差

    %取模 場景:

    獲取范圍數值時,如:int result=(x%100)+1; 則result值的范圍為[1.100]得到m進制的個位數,如8進制個位數: int a=x%8;介于取模的特性,可以用在循環數組結構中獲取下標,0,1,2,3,0,1,2,3,0,1,2…

    二、邏輯運算符(判斷真假)

    || &&

    邏輯或 邏輯與

    > >= < <=

    大于 大于等于 小于 小于等于

    !

    ? : 三元運算符

    三元運算符

    三、位運算符(重點) 

    << 左移

    運算場景:
    左移1位,數據=數據2
    m左移n位,m=m2?

    >> 右移

    運算場景:
    右移1位,數據=數據/2
    m右移n位,m=m/2?

    注意:
    signed和unsigned的右移動是不同的
    signed修飾的變量的右移做while條件且變量為負數時,while會進入死循環(因為最高位=1,是符號位,永遠無法右移為0)

    & | ^ ~ 與 或 異或 取反

    & 與
    bit中任意一位與0相&,該位都為0
    場景:

    屏蔽清零器 a=a | (~(0x1<<n))
    int a=0x1234;
    //屏蔽低8位
    a=a& 0xff00;
    int a=0x1234;
    //清零器,清除bit第五位的高電平,轉為低電平,其他位不變
    a=a & (~(0x1<<5));

    | 或
    bit中任意一位與1相|,該位都為1
    場景:

    保留/設置:設置高電平的方法,如設置指定位為高電平,其他位不變 a=a | (0x1<<n)
    int a=3;
    //使用左移可以更方便快速的讓第五位bit處于高電平,而且不影響其他位(嵌入式中bit最右邊通常讀作第0位)
    a= a| (0x1<<5)

    ^ 異或
    相同為0,不同為1
    1.通常用于數據加密算法,AES SHA1等
    2.數據交換(排序中的一種方法)

    a=a^b;

    b=a^b;
    a=a^b;

    ~ 取反
    按位取反

    四、賦值運算符

    = += -= &= ...
    賦值運算實際上是組合運算的縮寫,非原子性操作,volatile內存可見特性會失效(實際上執行了兩步,只靠volatile無法解決)

    五、內存訪問符號

     () 限制符/函數訪問符

    1.限制符

    (a+b)*c

    1.函數訪問符

    void fun();

    [] 內存訪問ID符

    內存訪問ID符(C語言中并不局限于數組的訪問,通過指針可以訪問整個內存空間)

    a[0]
    a[1]

    {} 函數體限制符

    函數體限制符

    -> 地址訪問符 

    .變量訪問符 

    &取址符

    &a;

    *取值符

    *a;

    感謝各位的閱讀,以上就是“C語言的運算符用法介紹”的內容了,經過本文的學習后,相信大家對C語言的運算符用法介紹這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    永登县| 陵水| 中宁县| 泾源县| 灵丘县| 大埔县| 夹江县| 水富县| 泽库县| 大竹县| 靖安县| 大安市| 苍山县| 新巴尔虎左旗| 长子县| 施秉县| 拜城县| 德兴市| 灵台县| 枞阳县| 白朗县| 涡阳县| 津市市| 朝阳区| 扶余县| 邹平县| 雷波县| 绿春县| 略阳县| 凤翔县| 沿河| 鹿泉市| 榆社县| 乌审旗| 永新县| 来安县| 绍兴县| 牙克石市| 广西| 邛崃市| 瑞金市|