Šajā detalizētajā rokasgrāmatā mēs apspriedīsim C programmēšanas operatorus un to veidus.
Operatori un to veidi C programmēšanā
Operatori ir simboli, ko izmanto konkrētu matemātisko uzdevumu veikšanai. Tos izmanto, lai manipulētu ar datiem un mainīgajiem. Tālāk ir norādīti dažādi C programmēšanas operatoru veidi:
- Aritmētiskie operatori
- Unārie operatori
- Piešķiršanas operatori
- Loģiskie vai Būla operatori
- Relāciju operatori
- Nosacīti operatori
- Bitu operatori
1: Aritmētiskie operatori
Šie ir operatori, ko izmanto, lai veiktu pamata matemātiskās funkcijas, piemēram, saskaitīšanu, atņemšanu vai reizināšanu. Šos operatorus var izmantot gandrīz visos iebūvētajos C programmēšanas datu tipos. Tālāk ir norādīti C programmēšanā izmantotie aritmētiskie operatori:
Operatori | Funkcijas |
+ | Pievienojiet 2 operandus |
– | Atņemiet 2 operandus |
* | Reiziniet 2 operandus |
/ | Sadaliet 2 operandus |
% | Moduļa operators dod atlikušo dalījuma daļu |
Piemērs
Tālāk esošajā piemērā mēs esam veikuši iepriekš minētās aritmētiskās darbības ar mainīgo X un mainīgo Y. Mainīgajam X ir vērtība 20, bet Y vērtība ir 5:
#include
starpt galvenais ( )
{
starpt X = divdesmit ;
starpt UN = 5 ;
starpt rezultāts ;
rezultāts = X + UN ;
printf ( 'X un Y pievienošana ir: %d \n ' , rezultāts ) ;
rezultāts = X - UN ;
printf ( 'X un Y atņemšana ir: %d \n ' , rezultāts ) ;
rezultāts = X * UN ;
printf ( 'X un Y reizinājums ir: %d \n ' , rezultāts ) ;
rezultāts = X / UN ;
printf ( 'X un Y dalījums ir: %d \n ' , rezultāts ) ;
rezultāts = X % UN ;
printf ( 'X un Y moduļu sadalījums ir: %d \n ' , rezultāts ) ;
atgriezties 0 ;
}
2: Unārie operatori
Ir divi unikāli unāri operatori, kurus atbalsta tikai C valoda, pieauguma ++ un dekrementa operatori. Pieaugšanas operators operandam pievieno 1, bet samazināšanas operators no operanda atņem 1.
Pieauguma operators ir uzrakstīts šādi:
++ a vai a ++
Samazināšanas operators ir:
-- a vai a --Ja mēs izmantojam palielināšanas un samazināšanas operatoru kā prefiksu, tas vispirms saskaita vai atņem mainīgā vērtību, un pēc tam rezultāts tiek piešķirts mainīgajam kreisajā pusē. Ja operatori ir pievienoti iepriekš, tas vispirms atgriež sākotnējo vērtību un pēc tam operaands tiek pievienots vai atņemts ar 1.
Piemērs
Zemāk mēs esam piešķīruši vērtības diviem mainīgajiem a un b un pielietojām tiem palielināšanas un samazināšanas operatorus:
#includestarpt galvenais ( )
{
starpt a = piecpadsmit , b = 10 ;
printf ( '++a = %d \n ' , ++ a ) ;
printf ( 'a++ = %d \n ' , a ++ ) ;
atgriezties 0 ;
}
3: Piešķiršanas operators
An piešķiršanas operators (=) tiek izmantots, lai programmā mainīgajam piešķirtu vērtību. Zemāk ir minētie piešķiršanas operatori:
Operatori | Funkcija |
= | Piešķiriet operandam vērtības |
+= | Pievienojiet labās puses operanda vērtību kreisajam operandam |
-= | Atņemiet labā operanda vērtību no kreisā operanda |
*= | Reiziniet labā operanda vērtību ar kreiso operandu |
/= | Sadaliet labā operanda vērtību ar kreiso operandu |
%= | Paņemiet divu vērtību moduli un piešķiriet vērtību kreisajam operandam |
Piemērs
Tālāk esošajā piemērā esam parādījuši piešķiršanas operatoru darbību diviem operandiem X un Y:
#includestarpt galvenais ( )
{
starpt X = 10 ;
starpt rezultāts ;
rezultāts = X ;
printf ( 'Rezultāta vērtība = %d \n ' , rezultāts ) ;
rezultāts += X ;
printf ( 'Rezultāta vērtība = %d \n ' , rezultāts ) ;
rezultāts -= X ;
printf ( 'Rezultāta vērtība = %d \n ' , rezultāts ) ;
rezultāts *= X ;
printf ( 'Rezultāta vērtība = %d \n ' , rezultāts ) ;
rezultāts /= X ;
printf ( 'Rezultāta vērtība = %d \n ' , rezultāts ) ;
atgriezties 0 ;
}
4: relāciju operatori
Relāciju operatori tiek izmantoti C programmēšanā, lai pārbaudītu attiecības starp diviem mainīgajiem. To var izmantot, lai salīdzinātu preču cenas vai divu cilvēku vecumu. Tālāk ir norādīti C programmēšanā izmantotie relāciju operatori:
Operatori | Funkcijas |
== | Vienāds ar |
> | Lielāks nekā |
< | Mazāk nekā |
>= | Lielāks nekā vienāds ar |
<= | Mazāk nekā vienāds ar |
!= | Nav vienāds ar |
Piemērs
Zemāk redzamais piemērs parāda relāciju operatoru darbību C programmēšanā:
#includestarpt galvenais ( )
{
starpt a = 9 ;
starpt b = 10 ;
printf ( '%d == %d ir %d \n ' , a , b , a == b ) ;
printf ( '%d > %d ir %d \n ' , a , b , a > b ) ;
printf ( '%d < %d ir %d \n ' , a , b , a < b ) ;
printf ( '%d != %d ir %d \n ' , a , b , a != b ) ;
printf ( '%d >= %d ir %d \n ' , a , b , a >= b ) ;
printf ( '%d <= %d ir %d \n ' , a , b , a <= b ) ;
atgriezties 0 ;
}
5: loģiskie operatori
Ir četri loģiskie operatori, kurus atbalsta C valoda:
Operatori | Funkcija |
Loģiski UN (&&) | Taisnība tikai tad, ja ir izpildīti visi nosacījumi |
Loģiski VAI (||) | Ja tikai viens nosacījums atbilst, rezultāts ir patiess |
Loģiski NĒ(!) | Ja operanda vērtība ir 0, rezultāts ir patiess |
Bitu veidā NAV (~). | Apgriež visus operanda bitus |
Piemērs
Tālāk sniegtais koda piemērs izskaidro loģisko operatoru darbību C:
#includestarpt galvenais ( )
{
starpt X = 10 , UN = 4 , AR = 10 , rezultāts ;
rezultāts = ( X == UN ) && ( AR > UN ) ;
printf ( '(X == Y) && (Z > Y) ir %d \n ' , rezultāts ) ;
rezultāts = ( X == UN ) && ( AR < UN ) ;
printf ( '(X == Y) && (Z < Y) ir %d \n ' , rezultāts ) ;
rezultāts = ( X == UN ) || ( AR < UN ) ;
printf ( '(X == Y) || (Z < Y) ir %d \n ' , rezultāts ) ;
rezultāts = ( X != UN ) || ( AR < UN ) ;
printf ( '(X != Y) || (Z < Y) ir %d \n ' , rezultāts ) ;
rezultāts = ! ( X != UN ) ;
printf ( '!(X != Y) ir %d \n ' , rezultāts ) ;
rezultāts = ! ( X == UN ) ;
printf ( '!(X == Y) ir %d \n ' , rezultāts ) ;
rezultāts = ! ( X > UN ) ;
printf ( '!(X > Y) ir %d \n ' , rezultāts ) ;
atgriezties 0 ;
}
6: nosacījuma operatori
Nosacītais operators valodā C ir pazīstams arī kā trīskāršs operators jo tam nepieciešami trīs operandi – nosacījums, 1. priekšraksts un 2. priekšraksts. Tas novērtē nosacījumu un atgriež vai nu 1. vai 2. priekšrakstu atkarībā no konkrētā nosacījuma rezultāta, kas var būt patiess vai nepatiess.
Stāvoklis ? Paziņojums, apgalvojums 1 : Paziņojums, apgalvojums 2- Stāvoklis: Būla izteiksme, kas pārbauda, vai tā ir patiesa vai nepatiesa.
- 1. paziņojums: Izteiksme, kas tiek novērtēta, ja nosacījums ir patiess.
- 2. paziņojums: Izteiksme, kas tiek novērtēta, ja nosacījums ir nepatiess.
Piemērs
Tālāk esošajā piemērā es esmu piešķīris vērtību skaitlim un pēc tam piemērojis nosacījumu, ja nosacījums ir patiess, tad 1. apgalvojums tiks izvadīts, un, ja nosacījums ir nepatiess, izvade būs otrais:
#includestarpt galvenais ( )
{
starpt numuru = 10 ;
( numuru < divdesmit ) ? ( printf ( 'Tas ir mazāks par 20. numuru!' ) ) : ( printf ( 'Tas ir lielāks par skaitli 20!' ) ) ;
atgriezties 0 ;
}
7: Bitu operatori
Bitu operatori C versijā manipulē ar datiem bitu līmenī, kas nozīmē, ka tie darbojas ar atsevišķiem datu tipu bitiem, piemēram, veseliem skaitļiem. Tos nevar uzklāt uz dubultā un pludiņa, un tos izmanto, lai pārbaudītu uzgaļus un pārvietotu tos pa labi vai pa kreisi.
Bitu operatori C programmēšanā ir norādīti zemāk esošajā tabulā:
Operatori | Funkcija |
& | Bitu UN |
| | Bitu virzienā VAI |
^ | Bitwise Exclusive VAI |
<< | Pārslēdziet pa kreisi |
>> | Shift pa labi |
~ | Viens papildinājums |
Piemērs
Šajā piemērā ir parādīta C programma, kas izmanto bitu operatorus:
#includestarpt galvenais ( ) {
starpt a = 13 ; // binārais 1101
starpt b = 7 ; // binārais 0111
starpt rezultāts ;
// Bitu UN
rezultāts = a & b ; // 1101 & 0111 = 0101 (5. decimāldaļa)
printf ( 'a un b = %u \n ' , rezultāts ) ;
// Bitu VAI
rezultāts = a | b ; // 1101 | 0111 = 1111 (15 decimāldaļa)
printf ( 'a | b = %u \n ' , rezultāts ) ;
// Bitu XOR
rezultāts = a ^ b ; // 1101 ^ 0111 = 1010 (decimāldaļa 10)
printf ( 'a ^ b = %u \n ' , rezultāts ) ;
// Bitu pa kreisi nobīde
rezultāts = a << 2 ; // 1101 << 2 = 110100 (52 decimālzīme)
printf ( 'a << 2 = %u \n ' , rezultāts ) ;
// Bitu pa labi nobīde
rezultāts = a >> 2 ; // 1101 >> 2 = 0011 (3. decimāldaļa)
printf ( 'a >> 2 = %u \n ' , rezultāts ) ;
// Bitu veidā NAV
rezultāts = ~a ; // ~1101 = 0010 (decimāldaļas 2 komplementa attēlojums no -14)
printf ( '~a = %d \n ' , rezultāts ) ;
atgriezties 0 ;
}
Piezīme: Bitu operatori tiek izmantoti, lai veiktu uzdevumus bitu līmenī, kas nozīmē, ka tie darbojas ar atsevišķiem bitiem binārā skaitļa ietvaros. No otras puses, Būla operatori tiek izmantoti, lai veiktu darbības ar loģiskajām vērtībām. Tie darbojas, pamatojoties uz Būla vērtībām (patiesa/false vai 1/0), un tos parasti izmanto lēmumu pieņemšanas procesos vai nosacījumu paziņojumos.
Bottom Line
Operators ir simbols, kas uzdod kompilatoram veikt noteiktas funkcijas. C valodai ir vairāki iebūvēti operatori, tostarp aritmētiskais, unārais, piešķiršanas, loģiskais, relāciju, nosacījuma, Būla un bitu operators. Mēs tos esam detalizēti apsprieduši un parādījuši ar izvades piemēru. Izlasiet iepriekš minēto rokasgrāmatas sadaļu, lai iegūtu detalizētu informāciju par šiem operatoriem.