Operátory jazyka C jsou symboly, které se používají k provádění matematických nebo logických manipulací. Programovací jazyk C je bohatý na vestavěné operátory. Operátory se v programu podílejí na manipulaci s daty a proměnnými a tvoří součást matematických nebo logických výrazů.
Typy operátorů v jazyce C
- Aritmetické operátory
- Relační operátory
- Logické operátory
- Operátory přiřazení
- Operátory přírůstku a úbytku
- Podmíněné operátory
- . Operátor
- Bitové operátory
- Speciální operátory
Aritmetické operátory
Aritmetické operátory slouží k provádění matematických výpočtů, například sčítání (+), odčítání (-), násobení (*), dělení (/) a modul (%).
| Operátor | Popis |
|---|---|
| + | Sčítání |
| – | Subtrakce |
| * | Násobení |
| / | Dělení |
| % | Modul |
C Program pro sčítání dvou čísel
#include <stdio.h>void main(){ int i=3,j=7,k; /* Variables Defining and Assign values */ k=i+j; printf("sum of two numbers is %d\n", k); }

Operátory přibývání a ubývání
Operátory přibývání a ubývání jsou užitečné operátory obecně používané k minimalizaci výpočtu, tj.Tj. ++x a x++ znamená x=x+1 nebo -x a x– znamená x=x-1. Je však malý rozdíl mezi ++ nebo — zapsanými před nebo za operandem. Při použití pre-increment se nejprve k operandu přičte jednička a pak se výsledek přiřadí proměnné vlevo, zatímco při post-increment se nejprve přiřadí hodnota proměnné vlevo a pak se operand inkrementuje.
| Operátor | Popis |
|---|---|
| ++ | Inkrement |
| — | Dekrement |
#include <stdio.h>//stdio.h is a header file used for input.output purpose.void main(){ //set a and b both equal to 5. int a=5, b=5; //Print them and decrementing each time. //Use postfix mode for a and prefix mode for b. printf("\n%d %d",a--,--b); printf("\n%d %d",a--,--b); printf("\n%d %d",a--,--b); printf("\n%d %d",a--,--b); printf("\n%d %d",a--,--b);}
5 44 33 22 11 0
Relační operátory
Relační operátory se používají k porovnávání dvou veličin nebo hodnot.
| Operátor | Popis |
|---|---|
| == | Rovná se |
| != | Není rovno |
| > | Větší než |
| < | Méně než |
| >= | Větší nebo rovno |
| <= | Méně nebo rovno |
Logické operátory
C poskytuje tři logické operátory, kdy při rozhodování testujeme více než jednu podmínku. Jsou to následující: && (což znamená logický AND), || (což znamená logický OR) a ! (což znamená logický NOT).
| Operátor | Popis |
|---|---|
| && | A operátor. Provádí logickou konjunkci dvou výrazů. (Pokud se oba výrazy vyhodnotí jako True, výsledkem je True. Pokud je jeden z výrazů vyhodnocen jako False, je výsledkem False) |
| || | Operátor Or. Provádí logickou disjunkci dvou výrazů. (pokud se jeden z výrazů nebo oba vyhodnotí jako True, výsledkem je True) |
| ! | Operátor Not. Provádí logickou negaci výrazu. |
Bitové operátory
C poskytuje speciální operátor pro bitové operace mezi dvěma proměnnými.
| Operátor | Popis |
|---|---|
| << | Binární operátor levého posunu |
| >> | Operátor binárního pravého posunu |
| ~ | Operátor binárního jedničkového doplňku |
| & | Binární operátor AND |
| ^ | Binární operátor XOR |
| | | Binární operátor OR |
Operátory přiřazení
Operátory přiřazení použité pro přiřazení výsledku výrazu do proměnné. Jazyk C disponuje kolekcí zkrácených přiřazovacích operátorů.
| Operátor | Popis |
|---|---|
| = | Přiřazení |
| += | Inkrementy pak přiřazení |
| -.= | Snížení pak přiřadí |
| *= | Násobení pak přiřadí |
| /= | Dělení pak přiřadí |
| %= | Modul pak přiřadit |
| <<= | Levý posun a přiřadit |
| >>= | Pravý posun a assign |
| &= | Bitwise AND assign |
| ^= | Bitwise exclusive OR a assign |
| |= | Bitwise inclusive OR a assign |
Podmíněný operátor
C nabízí ternární operátor, kterým je podmíněný operátor (?: v kombinaci) pro konstrukci podmíněných výrazů.
| Operátor | Popis |
|---|---|
| ? : | Podmíněný výraz |
Speciální operátory
C podporuje některé speciální operátory
| Operátor | Popis |
|---|---|
| sizeof() | Vrací velikost místa v paměti. |
| & | Vrací adresu paměťového umístění. |
| * | Ukazatel na proměnnou. |
Program pro demonstraci použití operátoru sizeof
#include <stdio.h>void main(){ int i=10; /* Variables Defining and Assign values */ printf("integer: %d\n", sizeof(i));}

.