Úvod do činnosti unárnych operátorov v jazyku C ++
Unární operátori tieto kľúčové slová oddeľujú a rozumejú im osobitne. Operátor sa odvodzuje od operácie s kľúčovými slovami, čo znamená operáciu úlohy v matematickom výpočte zahŕňajúcom vstupné hodnoty na vytvorenie novej hodnoty ako výstupu. Operácia, ktorú vykonávame, je označená symbolom nazývaným operátor. Teraz unárne znamená operátor pôsobiaci na jeden operand. Operátori, ktorí pracujú na jednom operande, sa nazývajú unary operátori. Nová hodnota sa vytvára vždy, keď operátori konajú na jednom operande. Existujú tiež binárne a ternárne operátory, ktoré môžu byť použité na vytvorenie novej hodnoty pri rôznych typoch výpočtov. Binárni operátori operujú na dvoch operandoch, zatiaľ čo Ternary operujú na troch operandoch. Tu je uvedený zoznam unárnych operátorov v jazyku c ++, ktorý je spolu s príslušnými príkladmi vysvetlený.
Rôzni operátori Unary v C ++
V programovacom jazyku C ++ je k dispozícii deväť unary operátorov, ako je uvedené nižšie:
1. Unary Plus
Operátor unary plus je označený symbolom „+“ a tento operátor nevykonáva žiadne zmeny hodnoty operandu. Vždy predstavuje hodnotu operandov.
Syntax: +
kód:
#include
using namespace std;
int main()
( int y = + 10;
printf("y = %d \n", y);
return 0;
)
Výkon:
2. Unary mínus
Unárny mínus operátor je označený symbolom „-“ a tento operátor robí zmeny hodnoty operandu a výsledkom je negatívny výsledok. Preveďte kladnú hodnotu na zápornú hodnotu a zápornú hodnotu na kladnú hodnotu. Vždy predstavuje hodnotu operandov.
Syntax: -
kód:
#include
using namespace std;
int main() (
int y;
float x = 2.34;
y = (int) x;
x = -x;
cout << x;
return 0;
)
Výkon:
3. Operátor prírastku
Operátor prírastku je označený symbolom „++“. Operátori zvyšovania hodnoty vždy zvyšujú hodnotu o 1. Zvyčajne dva typy operátorov zvyšovania a zvyšovania hodnoty.
Syntax: ++
kód:
#include
using namespace std;
int main()
(
int p=10;
int q=20;
printf("The value of p: %d\n", ++p);
printf("The value of q: %d\n", q++);
return 0;
)
Výkon:
4. Prevádzkovateľ dekrementov
Operátor znižovania je označený symbolom „-“. Operátor znižovania vždy znižuje hodnotu o 1. Zvyčajne sa jedná o operátora dvojitého a dvojitého rozkladu.
Syntax: --
kód:
#include
using namespace std;
int main()
(
int p=10;
int q=20;
printf("The value of p: %d\n", --p);
printf("The value of q: %d\n", q--);
return 0;
)
Výkon:
5. Adresa prevádzkovateľa
Adresa operátora je označená symbolom „&“. Tento operátor vráti adresu ľubovoľnej premennej. Ako zvyčajne, berie na vedomie adresu svojho operandu. Operand adresy operátora môže byť funkcia alebo celočíselná hodnota, ktorá sa nachádza v objekte.
Syntax: &
kód:
#include
using namespace std;
int main()
(
int x, p=20;
printf("Value of p: %d\n", x);
printf("Address of p: %X\n", &p);
return 0;
)
Výkon:
6. Veľkosť prevádzkovateľa
Veľkosť operátora je označená symbolom „sizeof ()“. Veľkosť operátora funguje ako funkcia. Tento operátor vždy vracia veľkosť obsadenej premennej a objektu. Tento operátor vráti aj veľkosť všetkých typov údajov. Je tiež známa ako kompilátor v rovnakom čase.
Syntax: sizeof()
kód:
#include
using namespace std;
int main()
(
int p=20;
printf("The size of p : %d\n", sizeof(p));
printf("The size of 20 : %d\n", sizeof(20));
printf("The size of int : %d\n", sizeof(int));
printf("The size of char : %d\n", sizeof(char));
printf("The size of float: %d\n", sizeof(float));
return 0;
)
Výkon:
7. Dereferenčný operátor
Dereferenčný operátor je označený symbolom „*“. Tento operátor vráti celé číslo, ktoré sa rovná hodnote adresy ukazovateľa. Tento operátor je známy aj ako operátor presmerovania.
SYNTAX: *
kód:
#include
using namespace std;
int main() (
int x = 5;
int *yx = &x;
int **yyx = &yx;
cout << "Value of x:\n"
<< "the direct value: " << x << endl
<< "the indirect value: " << *yx << endl
<< "the doubly indirect value: " << **yyx << endl
<< "the address of x: " << yx << endl
<< "the address of x via indirection: " << *yyx << endl;
)
Výkon:
8. Logické NIE
Logický operátor NOT je označený symbolom „!“. Tento operátor obracia význam svojho operandu. Tento operátor je známy aj ako operátor logickej negácie. Implicitne sa operand skonvertuje na booleovský typ údajov.
Syntax !
kód:
#include
using namespace std;
int main() (
int x = 0;
if (!x)
cout << "x is zero" << endl;
)
Výkon:
9. Bitový NOT / niečí kompliment
Bitový operátor NOT je označený symbolom „~“. Tento operátor poskytuje bitový doplnok operandu. Tento operátor je známy aj ako doplnkový operátor. Znamená to, že výsledkom bude konverzia každej 1 na 0.
Syntax : ~
kód:
#include
using namespace std;
int main () (
unsigned short x = 0xFFFF;
cout << std::hex << x << endl;
x = ~x;
cout << std::hex << x << endl;
)
Výkon:
Vezmime ešte jeden príklad, ktorý predstavuje funkčnosť unárnych operátorov pomocou jedného kódu C ++:
#include
using namespace std;
int main()
(
int x = 1;
cout << "x value: " << x << endl;
int y = x++; // post increment
cout << "y value after x++ : " << y << endl;
cout << "x value after x++ : " << x << endl;
x = 5;
cout << "x value: "<< x< y = --x;
cout << "y value after --x : " << y << endl;
cout << "x value after --x : " << x << endl;
return 0;
)#include
using namespace std;
int main()
(
int x = 1;
cout << "x value: " << x << endl;
int y = x++; // post increment
cout << "y value after x++ : " << y << endl;
cout << "x value after x++ : " << x << endl;
x = 5;
cout << "x value: "<< x< y = --x;
cout << "y value after --x : " << y << endl;
cout << "x value after --x : " << x << endl;
return 0;
)
Výkon:
Záver - Jednotní operátori v jazyku C ++
Unárny operátor je veľmi užitočný na vykonávanie rôznych výpočtov a konverziu typov v najmenšom možnom čase. Efektívnosť kódu sa dá pomocou týchto unárnych operátorov zvýšiť, pretože nemusíte vytvárať funkciu pre základné úlohy, ktoré môžu operátori vykonať v krátkom čase.
Odporúčané články
Toto bol návod pre Unary Operators v C ++. Tu tiež diskutujeme o ich zavedení a prvých 9 unárnych operátorov v jazyku c ++. Ak sa chcete dozvedieť viac, môžete si pozrieť aj nasledujúce články -
- Operátori PowerShell
- Operátori Pythonu
- Prevádzkovatelia C.
- Operátori Windows