logo

Adressbetreiber & in C

Der Adressoperator in C ist ein spezieller unärer Operator, der die Adresse einer Variablen zurückgibt. Es wird als bezeichnet Kaufmännisches Und-Symbol ( & ) . Dieser Operator gibt einen ganzzahligen Wert zurück Adresse seines Operanden in der Erinnerung. Wir können den Adressoperator (&) mit jeder Art von Variablen, Arrays, Strings, Funktionen und sogar Zeigern verwenden.

Syntax

Der Adressoperator wird im Allgemeinen als Präfix zu seinem Operanden verwendet:



  &   operand>

Wo Operand kann eine Variable, ein Array, eine Funktion, ein Zeiger usw. sein.

Adress-Operator-in-C

Adressoperator in C

Beispiele für Adressoperatoren

Beispiel 1:

Einfaches C-Beispiel zur Demonstration der Verwendung des Adressoperators in unserem Programm.



C




int, um Java zu char



// C program to illustrate the use of address operator> #include> > int> main()> {> >// declaring a variable> >int> x = 100;> > >// printing the address of the variable> >printf>(>'The address of x is %p'>, &x);> >return> 0;> }>

>

>

Ausgabe

The address of x is 0x7fffe8f5591c>

Erläuterung

Eine Variable X wurde im obigen Programm mit dem Wert 100 definiert und initialisiert. Wir haben die Adresse dieser Variablen x mithilfe des Adressoperators (&) als Präfix abgerufen und sie mit der Funktion printf() ausgedruckt.

df.loc

Notiz: Der %p-Formatbezeichner zum Drucken der Adresse in Hexadezimalform.

Im Allgemeinen wird der vom Adressoperator zurückgegebene Wert im gespeichert Zeiger Variable und dann wird der Zeiger dereferenziert, um den in dieser Adresse gespeicherten Wert zu erhalten.

Beispiel 2:

Verwenden eines Zeigers zum Speichern der vom Adressoperator zurückgegebenen Adresse und anschließendes Dereferenzieren dieser Adresse.

C




// C program to illustrate the use of address operator with> // pointer> #include> > int> main()> {> >// integer variable> >int> x = 1;> >// integer pointer> >int>* ptrX;> >// pointer initialization with the address of x> >ptrX = &x;> > >// accessing value of x usin pointer> >printf>(>'Value of x: %d '>, *ptrX);> > >return> 0;> }>

>

>

Ausgabe

Value of x: 1>

Beispiel 3:

Einige Standardfunktionen wie scanf() erfordern auch die Adresse der Variablen. In diesen Fällen verwenden wir den Adressoperator.

C




// C Program to illustrate the use of address operator with> // scanf()> #include> > int> main()> {> >// defining variable> >int> number;> > >printf>(>'Enter any number: '>);> >// using adress operator & in scanf() to get the value> >// entered by the user in the console> >scanf>(>'%d'>, &number);> > >// priting the entered number> >printf>(>'The entered number is: %d'>, number);> >return> 0;> }>

eol in Python

>

>

Ausgabe

Enter any number: 10 The entered number is: 10>

Adressieren Sie Operator-inkompatible Entitäten in C

Es gibt einige Entitäten in C, für die wir den Adressoperator nicht verwenden können, d. h. wir können die Adresse dieser Entitäten in C nicht erhalten. Einige davon sind:

  1. Variablen registrieren
  2. Bitfelder
  3. Literale
  4. Ausdrücke

Anwendungen des Adressoperators (&):

Der Adressoperator (&) wird in C-Programmen häufig verwendet, um die Adressen verschiedener Entitäten abzurufen. Einige der wichtigsten und häufigsten Anwendungen sind:

  1. Übergabe von Zeigern als Funktionsargumente
  2. Zeigerarithmetik
  3. Implementieren von Datenstrukturen