Programowanie w języku C/C++

Operatory

Operator to jeden lub kilka znaków (zazwyczaj nie będących literami), które mają specjalne znaczenie w języku programowania. W C++ wyróżniamy następujące rodzaje operatorów:
  • Operatory arytmetyczne:
    • + - dodawanie
    • - - odejmowanie
    • * - mnożenie
    • / - dzielenie
    • % - modulo (reszta z dzielenia)
  • Operatory bitowe:

    • << - przesunięcie w lewo
    • >> - przesunięcie w prawo
    • ~ - negacja bitowa
    • & - bitowy iloczyn logiczny (bitowa koniunkcja)
    • | - bitowa suma logiczna
    • ^ - bitowa różnica symetryczna
  • Operatory porównania:

    • < - mniejszy niż
    • <= - mniejszy bądź równy
    • > - większy od
    • >= - większy bądź równy
    • == - równy
    • != - różny od
  • Operatory logiczne:

    • ! - negacja
    • && - iloczyn logiczny
    • || - suma logiczna
  • Operatory przypisania:

    • = - zwykłe przypisanie
    • += - dodaj i przypisz
    • -= - odejmij i przypisz
    • *= - mnóż i przypisz
    • /= - dziel i przypisz
    • %= - modulo i przypisz
    • &= - koniunkcja i przypisanie
    • |= - alternatywa i przypisanie
    • ^= - bitowa różnica symetryczna i przypisanie
    • <<= - przesunięcie w lewo i przypisanie
    • >>= - przesunięcie w prawo i przypisanie
  • Operatory rzutowania:

  • Operatory wskaźnikowe:

    • &
    • *
    • []
  • Operatory pamięci:

  • Operator sizeof

  • Operator zasięgu:

    • ::
  • Operator wyłuskania:

    • . - dla obiektu
    • -> - dla wskaźnika do obiektu
  • Operator warunkowy (trójperandowy):

    • ? (warunek ? powodzenie : niepowodzenie)
  • Operator rzucania wyjątku:

  • Nawiasy okrągłe:

    • (
    • )
  • Przecinek:

    • ,
Artykuł  został umieszczony na liście Zalążków artykułów. Jeżeli możesz rozbuduj go!

10 komentarzy

htm72 2015-02-08 10:16

A jak się łączą to napisać nie umiecie?

ne0 2008-04-27 22:18

1)dodac operator this
2) przeladowanie operatorw.

Coldpeer 2008-04-28 15:16

apropos przeładowania operatorow - od tego jest osobny artykuł (tzn. jeszcze nie ma)

Marooned 2007-03-25 15:00

1) new[] nie może być linkiem, nazwą jak widać - linkuje tylko new[
2) nieścisłości językowe: przypisz, przypisanie - raz tak, raz tak
3) dla ?: spotkałem się z nazwą "ternariusz" i nawet chyba używałem tej nazwy
4) trójperandowy - miało być trójoperandowy czy to jakaś nowa nazwa? [serio pytam :P]

marusiadj 2007-03-22 18:31

no własnie dobra uwaga, czemu nie ma operatora-- ani ++.akurat mi jest to potrzebne i myslalam że tu znajd.:)

Miczu 2006-11-12 16:40

Zostawiam artykuł (na razie) do poprawy literek i dodania znaczeń operatrów ^^

maxbog 2006-10-09 22:42

Kooba: co nie zmienia faktu, że są to operatory i można o nich wspomnieć w artykule o tychże

Kooba 2006-09-09 14:51

Coldpeer: rzutowanie zdecydowanie nadaje sie na osobny art Rzutowanie

Jojersztajner 2006-09-09 08:29

Coldpeer:
1. ?zasięg? i ?wyłuskanie? brzmią dobrze, nie marudź
3. albo może ?trynarny? (ang. ternary)?
4. nawiasy wpływają na kolejność wykonywania innych operatorów, mogą być więc nazywane operatorami (albo lepiej: metaoperatorami)
5, 7 i 8 - zrobię

Coldpeer 2006-09-09 00:55

1) Można by trochę urozmaicić, poprawić niektóre nazwy bo np. trochę dziwna ta nazwa"wyłuskania" (raczej jest to "wskaźnik do obiektu") albo "zasięgu" - trochę dziwnie brzmi, sugeruję "dostępu" - ot taka mała moja sugestia
2) Przydałoby się dodać jakieś przykłady, rozbudować tekst
3) Co do operatora warunkowego, ja bym to nazwał "trójperandowy" albo po prostu "operator ?" - ale ok. Tak też może być.
4) Nawiasy okrągłe to też operatory?
5) Dodać inne niewymienione operatory, jak np. postinkrementacji (++), czy dekrementacji (--) [arytmetyczne]
6) Dodać operatory rzutowania: static_cast, const_cast itd.
7) Dodać operator rzucenia wyjątku throw?
8) Zrobić linki operatorów takich jak new, delete, sizeof poprzez np. [[C/sizeof]]

Pozdrawiam