在編程語言,特別是在 C 語言中,`|` 和 `||` 具有不同的功能和用途。
1. `|` 是按位或運算符(Bitwise OR)。這個運算符會比較兩個數的每一位,如果兩個相應的二進制位中有至少一個為1,那么結果位就為1,否則為0。例如,如果我們有兩個整數,5(二進制表示為 101)和 3(二進制表示為 011),5 | 3 的結果是 7(二進制表示為 111)。
2. `||` 是邏輯或運算符(Logical OR)。這個運算符用于比較兩個邏輯表達式。如果兩個表達式中至少有一個為真(非0),那么結果就是真。例如,如果我們有兩個表達式,`a > 5` 和 `b < 3`,那么 `a > 5 || b < 3` 的結果就是真,只要 `a` 大于5或 `b` 小于3。
這兩個運算符的主要區別在于它們的操作數和運算方式。`|` 是位操作,適用于整數;`||` 是邏輯操作,適用于布爾表達式。