2
#include <stdio.h>
int main()
{
int a = 10, b = 5, c = 3;
b != !a;
c = !!a;
printf("%d\t%d", b, c);
}
這是c代碼。我得到了輸出爲5 1。我無法得到b和c這個表達式的操作。任何人都可以解釋一下嗎?C編程!算術運算符操作
#include <stdio.h>
int main()
{
int a = 10, b = 5, c = 3;
b != !a;
c = !!a;
printf("%d\t%d", b, c);
}
這是c代碼。我得到了輸出爲5 1。我無法得到b和c這個表達式的操作。任何人都可以解釋一下嗎?C編程!算術運算符操作
這是一個技巧性問題。
b != !a;
基本上是一個NOP。它只是評估爲1
,但不會更改b
的內容。你可以完全刪除這一行,你會得到相同的輸出。
'!='不是一項任務。 – dhke
'!'是一個*邏輯*否定。 –