Udostępnij za pośrednictwem


C relacyjnych i operatory równości

Binarny relacyjnych i równości operatory porównania ich pierwszego operandu do ich drugi operand, aby sprawdzić ważność określonej relacji.Wynik wyrażenia relacyjnej jest 1, jeśli relacja badane jest true i 0, jeśli ma wartość false.Typ wyniku jest int.

Składnia

  • relacyjne wyrażenie:
    SHIFT wyrażenie

    relacyjne wyrażenie <</c4> SHIFT wyrażenie

    relacyjne wyrażenie > SHIFT wyrażenie

    relacyjne wyrażenie < = wyrażenie shift

    relacyjne wyrażenie > = wyrażenie shift

  • wyrażenie równości:
    wyrażenie relacyjne

    wyrażenie równości == wyrażenie relacyjne

    wyrażenie równości ! = wyrażenie relacyjne

Operatory relacyjne i równości Testuj relacje następujące:

Operator

Badane relacji

<

Pierwszy operand mniej niż drugi operand

>

Pierwszy operand jest większa niż drugi operand

< =

Pierwszy operand mniejsza niż lub równa drugi operand

> =

Pierwszy operand większe niż lub równe drugi operand

==

Pierwszy argument równa drugi operand

!=

Pierwszy operand nie równa się drugi operand

Pierwsze cztery operatorów na powyższej liście mają wyższy priorytet niż operatory równości (== i !=).Zobacz informacje o pierwszeństwo w tabeli priorytet i łączność operatorów c.

Operandy mogą mieć typu integralną, pływające lub wskaźnik.Typy operandów mogą być różne.Operatory relacyjne wykonywanie zwykłych konwersje arytmetyczne na operandy typu integralną i pływających.Ponadto można użyć następujących kombinacji typów operand z relacyjnych i równości operatory:

  • Zarówno operandy o każdym relacyjnej lub równości operator może być wskaźniki do tego samego typu.Dla równości (==) i nierówności (!=) podmioty gospodarcze, wynik porównania wskazuje, czy dwa wskaźniki adres tej samej lokalizacji w pamięci.Dla innych operatory relacyjne (<</c1>, , **<</c7>=, i =), wynik porównania wskazuje względną pozycję adresy pamięci dwa obiekty, wskazywanego.>>**Operatory relacyjne porównania tylko przesunięcia.

    Porównanie wskaźnik jest zdefiniowany tylko dla części tego samego obiektu.Jeśli wskaźniki odnoszą się do członków tablicy, porównanie jest równoznaczne z porównania odpowiednich dolnego.Adres pierwszy element tablicy jest "mniejszy niż" adres ostatniego elementu.W przypadku struktur, wskaźniki do struktury członków zadeklarowanych później są "większy niż" wskaźniki do członków zadeklarowanych wcześniej w strukturze.Wskaźniki do członków tej samej Unii są równe.

  • Wartość wskaźnika można porównać do stałej wartości 0 dla równości (==) lub nierówności (!=).Wskaźnik o wartości 0 jest nazywany "null" wskaźnik; oznacza to, że nie pkt lokalizacji w pamięci ważne.

  • Operatory równości wykonaj te same reguły, operatory relacyjne, ale zezwolić na dodatkowe możliwości: wskaźnik mogą być porównywane wyrażenie stałe integralną z wartością 0 lub wskaźnika do void.Jeśli dwa wskaźniki są oba wskaźniki zerowe, porównaj jako równe.Równości operatory porównania zarówno segmentu i przesunięcie.

Przykłady

Poniższe przykłady ilustrują relacyjnych i operatory równości.

int x = 0, y = 0;
if ( x < y )

Ponieważ x i y są równe, wyrażenie w tym przykładzie zwraca wartość 0.

char array[10];
char *p;

for ( p = array; p < &array[10]; p++ )
    *p = '\0';

Fragment w tym przykładzie ustawia się każdy element array do stałej znakiem null.

enum color { red, white, green } col;
   .
   .
   .
   if ( col == red )
   .
   .
   .

Instrukcje te zadeklarować zmienną wyliczenia o nazwie col za pomocą tagu color.W dowolnym momencie zmienna może zawierać wartość całkowitą 0, 1 lub 2, co stanowi jeden z elementów zestawu wyliczania color: kolor czerwony, biały lub zielony, odpowiednio.Jeśli col zawiera 0 po Jeśli jest wykonywana instrukcja, wszelkie oświadczenia, w zależności od Jeśli będzie wykonywany.

Zobacz też

Informacje

Operatory relacyjne: <>,, < =, a > =

Operatory równości: == i! =