Ano ang Pagkakaiba sa pagitan ng * at ang & Operator sa C Programming

Ano Ang Pagkakaiba Sa Pagitan Ng At Ang Operator Sa C Programming



Ang mga operator ay ginagamit upang magsagawa ng mga operasyon sa mga variable at ito ay lubos na nakakatulong para sa programmer na magsagawa ng mga operasyon tulad ng mathematical, relational at logical na mga form. Sa wikang C, mayroon kaming maraming uri ng mga built-in na function na ginagamit upang magsagawa ng mga partikular na gawain sa tulong ng isang solong sign operator.

Sa patnubay na ito makikita natin ang pagkakaiba sa pagitan ng * at at mga operator sa C programming.

* Operator sa C

Ang * Ang operator ay isa sa mga malawakang ginagamit na operator sa C programming language na ginagamit upang kunin ang mga halaga ng isang pointer. Pinangalanan din namin ang * operator bilang isang dereference-operator. Sa pamamagitan ng paggamit ng operator na ito, madali mong maa-access ang nakaimbak na data sa memorya gamit ang tulong ng mga address pointer. Kung gagamitin mo ito sa program kailangan mong simulan ang isang pointer na tumuturo sa address upang madaling makuha ng isa ang nakaimbak na halaga sa address pointer.







& Operator sa C

at operator sa kabilang banda ay ginagamit upang ibalik ang address ng operand sa lokasyon ng memorya. Dahil sa & operator madali mong makuha ang address ng variable na tinutukoy sa lokasyon ng memorya. Upang makita ang address ng variable ng anumang uri ng data type kailangan mong ibigay ang pangalan ng variable na may sign ng &-operator.



Mga halimbawa

Nasa ibaba ang ilang halimbawa ng mga C program na gumagamit * operator, at operator at kumbinasyon ng pareho.



Halimbawa 1: Mga Gumagamit ng Programa (*) Operator

#include

int pangunahing ( ) {
int A = 5 ;
int * p = at A ;
printf ( 'Ang Halaga ng A ay %d \n ' , * p ) ;
bumalik 0 ;
}

Ang code ay nagpapasimula ng variable A na may halaga 5 pagkatapos ay idineklara nito ang isang variable na uri ng pointer upang magkaroon ng ilang address ng memorya at sa printf function, ipinapakita nito ang halaga ng address A na 5.





Output



Halimbawa 2: Mga Gumagamit ng Programa (&) Operator

#include

int pangunahing ( )
{
int var1 = 1000 ;
int var2 ;
var2 = at var1 ;
printf ( ' Ang address ng memory-location ng var2 ay %i' var2 ) ;
bumalik 0 ;
}

Sa code sa itaas, una, mayroong isang integer variable var1 na may halagang 1000. May isa pang variable var2 na kumukuha ng address ng variable var1 . Pagkatapos ay ipi-print ang address gamit ang %i mga tagatukoy ng format.

Output

Halimbawa 3: Ginagamit ng Programa ang parehong & at * Operator

#include
int pangunahing ( ) {
int aa = 5 , bb ;
int * pp ;
pp = at aa ;
bb = * pp ;
printf ( '-----ang-address ng aa ay 0x%x \n -----' , at aa ) ;
printf ( '-----Ang mga address ng-bb ay 0x%x \n -----' , at bb ) ;
printf ( '-----Ang halaga-ng pp ay 0x%x \n -----' , pp ) ;
printf ( '---------Ngayon ang halaga ng aa ay %d \n -----' , aa ) ;
printf ( '-------value ng *pp iss %d \n -----' , * pp ) ;
printf ( '-----Ang halaga ng bb ay: %d----' , bb ) ;
bumalik 0 ;
}

Sa C code sa itaas, dalawang simpleng integer variable ang sinisimulan at isang pointer type variable *pp. Pagkatapos ay itinalaga namin ang aa address sa pp at muling i-dereference ang halaga nito sa pamamagitan ng bb variable. Sa dulo, nai-print namin ang lahat ng mga halaga sa pamamagitan ng paggamit ng printf function.

Output

Konklusyon

Ang mga operator ay may napakahalagang papel sa programming language. Sa artikulong ito, tinalakay namin ang dalawang operator na gumagana sa mga solong operand lamang at ginagamit upang itaas ang pagganap ng code sa C programming language. pareho * at at hinuhulaan ng mga operator ang kanilang kahulugan at paggana bilang * ay ginagamit para sa 'ibinabalik ang variable na halaga' habang at ay para sa 'pagmamanipula ng mga halaga sa oras ng pagtakbo sa pamamagitan ng pagkuha ng mga address ng memorya'.