1.不能建立臨時變數,實現兩個數的交換
注意:這個方法只適用於兩個運算元很小的時候,一旦兩個運算元相加大於int能表示的最大的數,那麼這個方法就無法解決此類問題//方法一:
#includeint main()
注意:這個方法就避免了兩數過大的問題,依靠位操作符來進行計算//方法2:
#includeint main()
2.編寫**,求乙個證書儲存在記憶體中的二進位制中1的個數
結果:a=2//方法1:
#includeint main()
printf("count=%d\n",count);
}
注意:這個方法只適用於整數,一旦運算元為負數這個方法將不再適用
結果為:32//方法2:
#includeint main()
printf("count=%d\n",count);
}
注意:按照移位在和1進行按位與很明顯的避免了負數除以2除不盡但餘數為-1不為1的特殊情況
操作符詳解
操作符的兩個運算元必須為整數 左移操作符 右移操作符左移操作符規則 右邊補0 右移操作符規則 1 邏輯移位 僅是移位操作符 左邊補0 2 算數移位 要考慮符號位 左邊補符號位 注意 對於一位運算子不要移動負數字,這是為標準定義的 按位與 按位或 按位異或位操作符的運算元必須是整數 賦值復合賦值符 例...
操作符詳解
1 邏輯位移 左邊用0補充,右邊丟棄 2 算數移位 左邊補符號位,右邊丟棄例 不能建立臨時變數 第三個變數 實現兩個數的交換。include intmain 編寫 實現 求乙個整數儲存在記憶體中的二進位制中1的個數 方法1 include intmain printf 二進位制中1的個數 d n c...
詳解sizeof操作符
一 sizeof是c語言的一種單目操作符,如c語言的其他操作符 等。它並不是函式。sizeof操作符以位元組形式給出了其運算元的儲存大小。運算元可以是乙個表示式或括在括號內的型別名。運算元的儲存大小由運算元的型別決定。二 sizeof的使用方法 1 用於資料型別 sizeof使用形式 sizeof ...