Heim  >  Artikel  >  Backend-Entwicklung  >  Was bedeutet „||“ in der C-Sprache?

Was bedeutet „||“ in der C-Sprache?

王林
王林Original
2020-07-11 11:57:4142106Durchsuche

In der C-Sprache stellt „||“ den logischen Operator (oder) dar und sein Operand ist vom booleschen Typ, das heißt, es gibt nur zwei Werte „0“ (was „falsch“ darstellt) und „1“ (steht für wahr). Die C-Sprache legt fest, dass bei logischen Operationen alle Werte ungleich Null als 1 behandelt werden.

Was bedeutet „||“ in der C-Sprache?

In der C-Sprache stellt „||“ den logischen Operator (oder) dar und sein Operand ist boolesch, also nur „0“ (was falsch bedeutet). ) und „1“ (was wahr bedeutet). Die C-Sprache legt fest, dass bei logischen Operationen alle Werte ungleich Null als 1 behandelt werden.

(Empfohlenes Tutorial: C-Sprach-Tutorial)

Der ähnliche Operator ist „|“, ein Bitoperator (oder), und sein Operand ist eine Bitfolge. Die Bitfolge kann ein Zeichentyp, ein Ganzzahltyp, ein langer oder kurzer Ganzzahltyp usw. sein (normalerweise wird ein vorzeichenloser Ganzzahltyp ausgewählt). Bei Bitoperationen werden logische Operationen zwischen entsprechenden Bits ausgeführt. Daher enthält der Bitoperationsprozess logisch gesehen mehrere logische Operationsprozesse.

Nachfolgend verwenden wir ein Beispiel, um den Unterschied zwischen den beiden zu verstehen.

#include <stdio.h>
int main (void)
{
    unsigned int x = 0x1101;
    unsigned int y = 0x1100;
    /*逻辑操作*/
    printf("sizeof(x || y): %d\n", sizeof(x || y));
    if(x||y)
    {
        printf("x || y : %d(True) \n", x||y);
    }
    else
    {
        printf("x || y : %d(False) \n", x||y);
    }
    /*位操作*/
    printf("sizeof(x | y): %d\n", sizeof(x | y));
    printf("x | y : %x \n", x|y);
    return 0;
}

Da weder Variable x noch Variable y 0 sind, gibt die Ausführung der Anweisung if(x||y) 1 zurück. Bei der Ausführung von x|y (d. h. 1101|1100) werden die entsprechenden Bits nacheinander logisch ODER-verknüpft, sodass das Ergebnis 1101 ist.

Das Ergebnis der Ausführung des Programms ist:

sizeof(x || y): 4
x || y : 1(True)
sizeof(x | y): 4
x | y : 1101

Das obige ist der detaillierte Inhalt vonWas bedeutet „||“ in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn