Mik az operátorok és típusaik a C programozásban

Mik Az Operatorok Es Tipusaik A C Programozasban



A C programozási nyelv operátorok széles skálájával rendelkezik, amelyek elengedhetetlenek a változókkal és konstansokkal kapcsolatos különféle műveletek végrehajtásához. A C operátorai speciális szimbólumok vagy kulcsszavak, amelyek egy vagy több operandust vesznek fel, és aritmetikai, logikai vagy bitenkénti műveleteket hajtanak végre. Az operátorok használata a C nyelvben lehetővé teszi különböző számítások és logikai kiértékelések végrehajtását egy programban.

Ebben a részletes útmutatóban a C programozás operátorait és azok típusait tárgyaljuk.

Operátorok és típusaik a C programozásban

Az operátorok a szimbólumok, amelyeket meghatározott matematikai feladatok végrehajtására használnak. Az adatok és a változók manipulálására szolgálnak. Az alábbiak a különböző típusú operátorok a C programozásban:







  1. Aritmetikai operátorok
  2. Egyértelmű operátorok
  3. Hozzárendelés operátorok
  4. Logikai vagy logikai operátorok
  5. Relációs operátorok
  6. Feltételes operátorok
  7. Bitenkénti operátorok

1: Aritmetikai operátorok

Ezek az operátorok olyan alapvető matematikai funkciók végrehajtására, mint az összeadás, kivonás vagy szorzás. Ezeket az operátorokat a C programozás szinte minden beépített adattípusához használhatja. A C programozásban használt aritmetikai operátorok a következők:



Üzemeltetők Funkciók
+ Adjunk hozzá 2 operandust
Vonjunk ki 2 operandust
* Szorozz meg 2 operandust
/ Ossz el 2 operandust
% A modulus operátor megadja az osztás maradékát

Példa

Az alábbi példában végrehajtottuk a fent említett aritmetikai műveleteket az X és az Y változóval. Az X változó értéke 20, Y pedig 5:



#include

int fő- ( )

{

int x = húsz ;

int ÉS = 5 ;

int eredmény ;

eredmény = x + ÉS ;

printf ( 'X és Y összeadása: %d \n ' , eredmény ) ;

eredmény = x - ÉS ;

printf ( 'X és Y kivonása: %d \n ' , eredmény ) ;

eredmény = x * ÉS ;

printf ( 'X és Y szorzata: %d \n ' , eredmény ) ;

eredmény = x / ÉS ;

printf ( 'X és Y felosztása: %d \n ' , eredmény ) ;

eredmény = x % ÉS ;

printf ( 'X és Y modulus felosztása: %d \n ' , eredmény ) ;

Visszatérés 0 ;

}





2: Unáris operátorok

Két egyedi unáris operátor létezik, amelyeket csak a C nyelv támogat, az increment ++ és a decrement — operátorok. A növelési operátor 1-et ad az operandushoz, a csökkentési operátor pedig kivon 1-et az operandusból.

A növekmény operátor a következőképpen írható:



++ a vagy a ++

A csökkentő operátor a következő:

-- a vagy a --

Ha előtagként használjuk a növelés és csökkentés operátort, akkor először összeadja vagy kivonja a változó értékét, majd az eredményt a bal oldali változóhoz rendeli. Ha az operátorokat korábban hozzáadja, akkor először az eredeti értéket adja vissza, majd az operandust hozzáadja vagy kivonja 1-gyel.

Példa

Az alábbiakban két a és b változóhoz értékeket rendeltünk, és növelő és csökkentő operátorokat alkalmaztunk rájuk:

#include

int fő- ( )

{

int a = tizenöt , b = 10 ;

printf ( '++a = %d \n ' , ++ a ) ;

printf ( 'a++ = %d \n ' , a ++ ) ;

Visszatérés 0 ;

}

3: Hozzárendelés operátor

An hozzárendelés operátor (=) A változó értékének hozzárendelésére szolgál a programban. Az alábbiakban felsoroljuk az említett hozzárendelési operátorokat:

Üzemeltetők Funkció
= Rendelje hozzá az értékeket az operandushoz
+= Adja hozzá a jobb oldalon lévő operandus értékét a bal oldali operandushoz
-= Vonja ki a jobb oldali operandus értékét a bal oldali operandusból
*= Szorozzuk meg a jobb oldali operandus értékét a bal operandussal
/= Ossza el a jobb oldali operandus értékét a bal operandussal
%= Vegyük a két érték modulusát, és rendeljük hozzá az értéket a bal oldali operandushoz

Példa

Az alábbi példában bemutattuk a hozzárendelési operátorok működését a két X és Y operanduson:

#include

int fő- ( )

{

int x = 10 ;

int eredmény ;

eredmény = x ;

printf ( 'Az eredmény értéke = %d \n ' , eredmény ) ;

eredmény += x ;

printf ( 'Az eredmény értéke = %d \n ' , eredmény ) ;

eredmény -= x ;

printf ( 'Az eredmény értéke = %d \n ' , eredmény ) ;

eredmény *= x ;

printf ( 'Az eredmény értéke = %d \n ' , eredmény ) ;

eredmény /= x ;

printf ( 'Az eredmény értéke = %d \n ' , eredmény ) ;

Visszatérés 0 ;

}

4: Relációs operátorok

A relációs operátorokat a C programozásban használják két változó közötti kapcsolat ellenőrzésére. Használható a cikkek árának vagy két ember életkorának összehasonlítására. A C programozásban használt relációs operátorok a következők:

Üzemeltetők Funkciók
== Egyenlő
> Nagyobb, mint
< Kevesebb, mint
>= Nagyobb, mint egyenlő
<= Kevesebb, mint egyenlő
!= Nem egyenlő

Példa

Az alábbi példa a relációs operátorok működését mutatja be a C programozásban:

#include

int fő- ( )

{

int a = 9 ;

int b = 10 ;

printf ( '%d == %d %d \n ' , a , b , a == b ) ;

printf ( '%d > %d %d \n ' , a , b , a > b ) ;

printf ( '%d < %d %d \n ' , a , b , a < b ) ;

printf ( '%d != %d %d \n ' , a , b , a != b ) ;

printf ( '%d >= %d %d \n ' , a , b , a >= b ) ;

printf ( '%d <= %d %d \n ' , a , b , a <= b ) ;

Visszatérés 0 ;

}

5: Logikai operátorok

Négy logikai operátort támogat a C nyelv:

Üzemeltetők Funkció
Logikai ÉS (&&) Csak akkor igaz, ha minden feltétel teljesül
Logikai VAGY (||) Ha csak egy feltétel teljesül, az eredmény igaz
Logikus NEM(!) Ha az operandus 0, az eredmény igaz
Bitenként NEM (~). Megfordítja az operandus összes bitjét

Példa

Az alábbi példakód elmagyarázza a logikai operátorok működését C-ben:

#include

int fő- ( )

{

int x = 10 , ÉS = 4 , VAL VEL = 10 , eredmény ;

eredmény = ( x == ÉS ) && ( VAL VEL > ÉS ) ;

printf ( '(X == Y) && (Z > Y) %d \n ' , eredmény ) ;

eredmény = ( x == ÉS ) && ( VAL VEL < ÉS ) ;

printf ( '(X == Y) && (Z < Y) %d \n ' , eredmény ) ;

eredmény = ( x == ÉS ) || ( VAL VEL < ÉS ) ;

printf ( '(X == Y) || (Z < Y) %d \n ' , eredmény ) ;

eredmény = ( x != ÉS ) || ( VAL VEL < ÉS ) ;

printf ( '(X != Y) || (Z < Y) %d \n ' , eredmény ) ;

eredmény = ! ( x != ÉS ) ;

printf ( '!(X != Y) %d \n ' , eredmény ) ;

eredmény = ! ( x == ÉS ) ;

printf ( '!(X == Y) %d \n ' , eredmény ) ;

eredmény = ! ( x > ÉS ) ;

printf ( '!(X > Y) %d \n ' , eredmény ) ;

Visszatérés 0 ;

}

6: Feltételes operátorok

A feltételes operátor C-ben más néven a hármas operátor mert három operandusra van szükség – a feltételre, az 1-es utasításra és a 2-es utasításra. Kiértékeli a feltételt, és vagy az 1. vagy a 2. utasítást adja vissza, attól függően, hogy egy adott feltétel eredménye igaz vagy hamis lehet.

Feltétel ? Nyilatkozat 1 : Nyilatkozat 2
  • Feltétel: Logikai kifejezés, amely ellenőrzi, hogy igaz vagy hamis.
  • 1. állítás: Egy kifejezés, amely akkor kerül kiértékelésre, ha a feltétel igaz.
  • 2. állítás: Kifejezés, amely akkor kerül kiértékelésre, ha a feltétel hamis.

Példa

Az alábbi példában az értéket a számhoz rendeltem, majd alkalmaztam a feltételt, ha a feltétel igaz, akkor az 1-es állítás lesz a kimenet, és ha a feltétel hamis, akkor a második állítás lesz a kimenet:

#include

int fő- ( )

{

int szám = 10 ;

( szám < húsz ) ? ( printf ( – Ez kevesebb, mint a 20! ) ) : ( printf ( – Ez nagyobb, mint a 20-as! ) ) ;

Visszatérés 0 ;

}

7: Bitenkénti operátorok

Bitenkénti operátorok C-ben bitszinten manipulálják az adatokat, ami azt jelenti, hogy az adattípusokon belüli egyes biteken, például egész számokon működnek. Nem alkalmazhatók a dupla és úszóra, és a bitek tesztelésére és jobbra vagy balra tolására használják.

A C programozás bitenkénti operátorait az alábbi táblázat tartalmazza:

Üzemeltetők Funkció
& Bitenként ÉS
| Bitenkénti VAGY
^ Bitenkénti exkluzív VAGY
<< Váltás balra
>> Váltás jobbra
~ Egyik kiegészítése

Példa

A következő példa egy C programot mutat be, amely bitenkénti operátorokat használ:

#include

int fő- ( ) {

int a = 13 ; // bináris 1101

int b = 7 ; // bináris 0111

int eredmény ;



// Bitenkénti ÉS

eredmény = a & b ; // 1101 és 0111 = 0101 (tizedes 5)

printf ( 'a és b = %u \n ' , eredmény ) ;

// Bitenkénti VAGY

eredmény = a | b ; // 1101 | 0111 = 1111 (tizedesjegy 15)

printf ( 'a | b = %u \n ' , eredmény ) ;

// Bitenkénti XOR

eredmény = a ^ b ; // 1101 ^ 0111 = 1010 (tizedes 10)

printf ( 'a ^ b = %u \n ' , eredmény ) ;

// Bitenkénti balra eltolás

eredmény = a << 2 ; // 1101 << 2 = 110100 (tizedes 52)

printf ( 'a << 2 = %u \n ' , eredmény ) ;

// Bitenkénti jobbra eltolás

eredmény = a >> 2 ; // 1101 >> 2 = 0011 (tizedesjegy 3)

printf ( 'a >> 2 = %u \n ' , eredmény ) ;

// Bitenként NEM

eredmény = ~a ; // ~1101 = 0010 (a -14 tizedes 2-es komplementereje)

printf ( '~a = %d \n ' , eredmény ) ;



Visszatérés 0 ;

}

Jegyzet: A bitenkénti operátorok bitszintű feladatok végrehajtására szolgálnak, ami azt jelenti, hogy egy bináris számon belül egyes biteken dolgoznak. A logikai operátorok ezzel szemben a logikai értékeken végzett műveletek végrehajtására szolgálnak. Logikai értékeken (igaz/hamis vagy 1/0) működnek, és gyakran használják döntéshozatali folyamatokban vagy feltételes utasításokban.

Bottom Line

Az operátor egy szimbólum, amely bizonyos funkciók végrehajtására utasítja a fordítót. A C nyelv számos beépített operátorral rendelkezik, beleértve az aritmetikai, unáris, hozzárendelési, logikai, relációs, feltételes, logikai és bitenkénti operátorokat. Részletesen megvitattuk őket, és bemutattuk a példa kimenettel. Olvassa el az útmutató fenti részét, hogy részletes információkat kapjon ezekről az operátorokról.