備選拼寫:iso646.h頭文件
C語言中有3種邏輯運算符:
邏輯運算符 | 含義 |
---|---|
&& | 與 |
|| | 或 |
! | 非 |
假設exp1和exp2是倆個簡單的關系表達式,那么
- 當且僅當exp1和exp2都為真時,exp1 && exp2才為真。
- 如果exp1或exp2為真,則exp1 || exp2為真。
- 如果exp1為假,則 !exp 為真;如果exp1為真,則 !exp 為假。
int main()
{char ch;int charcount = 0;while ((ch = getchar()) != '.');{if (ch != '"' && ch != '\'');++charcount;if (ch != '"' || ch != '\'');++charcount;}return 0;
}
C在美國用標準美式鍵盤開發的語言。但是在世界各地,并非所有的鍵盤都和美式鍵盤一樣的符號。
因此,C99標準新增了可代替邏輯運算符的拼寫,它們被定義在ios646.h頭文件中。如果程序中包含該頭文件,便可以使用and代替&&、or代替||、not代替!。
#include<stdio.h>
#include<iso646.h>int main()
{char ch;int charcount = 0;while ((ch = getchar()) not_eq '.');{if (ch not_eq '"' and ch not_eq '\'');++charcount;}return 0;
}
該表列出了邏輯運算符對應的拼寫:
傳統寫法 | ios646.h |
---|---|
&& | and |
&= | and_eq |
& | bitand |
|| | or |
| | bitor |
| | or_eq |
~ | compel |
! | not |
!= | not_eq |
^ | xor |
^= | xor_eq |