Hva er forskjellen mellom * og &-operatørene i C-programmering

Hva Er Forskjellen Mellom Og Operatorene I C Programmering



Operatører brukes til å utføre operasjoner på variabler og er svært nyttig for programmereren å utføre operasjoner som matematiske, relasjonelle og logiske former. I C-språket har vi mange typer innebygde funksjoner som brukes til å utføre spesifikke oppgaver ved hjelp av en enkeltskiltoperatør.

I denne retningslinjen vil vi se forskjellen mellom * og & operatører i C-programmering.

* Operatør i C

De * operator er en av de mye brukte operatorene i programmeringsspråket C som brukes til å hente verdiene til en peker. Vi navngir også *-operatør som en dereference-operator. Ved å bruke denne operatoren kan du enkelt få tilgang til de lagrede dataene i minnet ved hjelp av adressepekerne. Hvis du bruker det i programmet, må du initialisere en peker som peker til adressen slik at man enkelt kan hente den lagrede verdien i adressepekeren.







& Operatør i C

& operator på den annen side brukes til å returnere adressen til operanden i minneplasseringen. På grunn av &-operatøren kan du enkelt få adressen til variabelen som refereres til i minneplasseringen. For å se adressen til variabelen av en hvilken som helst type datatype, må du gi navnet på variabelen med tegnet &-operator.



Eksempler

Nedenfor er noen eksempler på C-programmer som bruker * operatør, & operatør og en kombinasjon av begge.



Eksempel 1: Program bruker (*) Operator

#include

int hoved- ( ) {
int EN = 5 ;
int * s = & EN ;
printf ( 'Verdien av A er %d \n ' , * s ) ;
komme tilbake 0 ;
}

Koden initialiserer variabel EN med verdi 5 erklærer den at en pekertypevariabel har en minneadresse, og i printf-funksjonen viser den verdien til adressen EN som er 5.





Produksjon



Eksempel 2: Program bruker (&) operatør

#include

int hoved- ( )
{
int var1 = 1000 ;
int var2 ;
var2 = & var1 ;
printf ( ' Minneplasseringsadressen til var2 er %i' var2 ) ;
komme tilbake 0 ;
}

I koden ovenfor er det først en heltallsvariabel var1 som har verdien 1000. Det er en annen variabel var2 som tar adressen til variabelen var1 . Adressen skrives deretter ut ved hjelp av %Jeg formatspesifikasjoner.

Produksjon

Eksempel 3: Program bruker både & og * operatører

#include
int hoved- ( ) {
int aa = 5 , bb ;
int * s ;
s = & aa ;
bb = * s ;
printf ( '-----adressen til aa er 0x%x \n -----' , & aa ) ;
printf ( '-----Adressene til-bb er 0x%x \n -----' , & bb ) ;
printf ( '-----Verdien av pp er 0x%x \n -----' , s ) ;
printf ( '---------Nå er verdien av aa %d \n -----' , aa ) ;
printf ( '-------verdi av *pp iss %d \n -----' , * s ) ;
printf ( '-----Verdien av bb er: %d----' , bb ) ;
komme tilbake 0 ;
}

I ovennevnte C-kode initialiseres to enkle heltallsvariabler og en pekertypevariabel *pp. Deretter tildeler vi aa-adressen til pp og derefererer igjen verdien av bb-variabelen. På slutten skriver vi ut alle verdiene ved å bruke printf-funksjonen.

Produksjon

Konklusjon

Operatører har en svært viktig rolle i programmeringsspråket. I denne artikkelen har vi diskutert to operatører som bare fungerer med enkeltoperander og bruker til å øke ytelsen til kode i programmeringsspråket C. Både * og & operatører konkluderer i deres betydning og funksjoner som * brukes for 'returnerer variabelverdien' mens & er for 'manipulering av verdier på kjøretid ved å ta minneadresser'.