c語言深度剖析 16 位運算子分析

2021-09-25 23:27:45 字數 1030 閱讀 7708

1.c語言中的位運算子

2.左移和右移注意點

3.有趣的問題:0x1 << 2 + 3 的值會是什麼?

#include #include int main()

4.小貼士——防錯準則5.程式設計實驗

#include #include // 利用中間變數交換

#define swap1(a, b) \

// 利用部分和來交換

#define swap2(a, b) \

// 利用異或運算

#define swap3(a, b) \

int main()

6. 位運算與邏輯運算不同7.程式設計實驗

#include int main()

printf("i = %d\n", i); // 1

printf("j = %d\n", j); // 1

printf("k = %d\n", k); // 1

return 0;

}

#includeint main()

printf("i = %d\n", i); // 1

printf("j = %d\n", j); // 0

printf("k = %d\n", k); // 0

return 0;

}

8.小結

16 位運算子分析

注 部落格中內容主要來自 狄泰軟體學院 部落格僅當私人筆記使用。測試環境 ubuntu 10.10 gcc版本 4.4.5 一 位運算子分析 1 c語言中的位運算子 位運算子直接對bit位進行操作,其效率最高。2 左移和右移注意點 左運算元必須為整數型別 char 和 short被隱式轉換為int後...

C 16 位運算子分析

位運算子直接對 bit 位進行操作,其效率最高 左運算元必需為整數型別 右運算元的範圍必需為 0,31 左移運算子 將運算子的二進位制位左移動 右移運算子 把運算子的二進位制位右移動 問題 下面的運算結果是什麼?0x1 2 3實驗 include int main 輸出 121 1 321 gcc編...

C語言學習記錄16 位運算子分析

c語言中的位運算子 位運算子直接對bit位進行操作,其效率最高。比四則運算高很多 左移和右移注意點 1 左運算元必須為整數型別 char和short被隱式轉換為int後進行移位操作。2 右運算元的範圍必須為 0,31 左移 1或者右移32結果不確定,因為標準c沒規定其行為,編譯器開發商定義。3 左移...