Was ist der Unterschied zwischen * und den Operatoren in der C -Programmierung

Was ist der Unterschied zwischen * und den Operatoren in der C -Programmierung
Die Bediener werden verwendet, um Operationen für Variablen auszuführen, und sind sehr hilfreich, damit der Programmierer Operationen wie mathematische, relationale und logische Formen ausführt. In der C-Sprache haben wir viele Arten von integrierten Funktionen, mit denen bestimmte Aufgaben mit Hilfe eines einzelnen Zeichenbetreibers ausgeführt werden.

In dieser Richtlinie werden wir den Unterschied zwischen dem sehen * Und & Operatoren in der C -Programmierung.

* Operator in c

Der * Operator ist einer der weit verbreiteten Operatoren in der C -Programmiersprache, mit der die Werte eines Zeigers abgerufen werden. Wir nennen auch den Operator als Dereferenzoperator. Durch die Verwendung dieses Bedieners können Sie mithilfe der Adresszeiger problemlos auf die gespeicherten Daten im Speicher zugreifen. Wenn Sie es im Programm verwenden, müssen Sie einen Zeiger initialisieren, der auf die Adresse hinweist.

& Betreiber in C

& Der Bediener hingegen wird verwendet, um die Adresse des Operanden am Speicherort zurückzugeben. Aufgrund des & Operators können Sie die Adresse der Variablen, auf die im Speicherort bezeichnet wird. Um die Adresse der Variablen jeglicher Art von Datentyp zu sehen, müssen Sie den Namen der Variablen mit dem Zeichen des & -operators angeben.

Beispiele

Im Folgenden finden Sie einige Beispiele für C -Programme, die verwenden * Operator, & Operator und eine Kombination von beidem.

Beispiel 1: Programm verwendet (*) Bediener

#enthalten
int main ()
int a = 5;
int *p = & a;
printf ("Der Wert von a ist %d \ n", *p);
Rückkehr 0;

Der Code initialisiert die Variable A Mit Wert 5 deklariert es eine Zeigervariable, die eine Speicheradresse hat, und in der Printf-Funktion zeigt sie den Wert der Adresse an A Welches ist 5.

Ausgang

Beispiel 2: Programm verwendet (&) Bediener

#enthalten
int main ()

int var1 = 1000;
int var2;
var2 = &var1;
printf ("Die Speicher-Location-Adresse von var2 ist %i", var2);
Rückkehr 0;

Im obigen Code gibt es zunächst eine Ganzzahlvariable var1 Das hat den Wert von 1000. Es gibt eine andere Variable var2 Das nimmt die Adresse der Variablen an var1. Die Adresse wird dann mit dem gedruckt %ich Formatspezifizierer.

Ausgang

Beispiel 3: Programm verwendet sowohl & als auch * Operatoren

#enthalten
int main ()
int aa = 5, BB;
int *pp;
pp = &aa;
BB = *pp;
printf ("----- der Anzug von AA ist 0x%x \ n -----", & aa);
printf ("----- Addres von BB ist 0x%x \ n -----", & BB);
printf ("----- Der Wert von PP beträgt 0x%x \ n -----", pp);
printf ("--------- jetzt ist der Wert von aa %d \ n -----", aa);
printf ("------- valuee von *pp iss %d \ n -----", *pp);
printf ("----- Der Wert von BB ist: %d ----", BB);
Rückkehr 0;

Im obigen C -Code werden zwei einfache Ganzzahlvariablen initialisiert und eine Zeigertypvariable *pp. Dann weisen wir die AA -Adresse PP zu und derenference ihren Wert nach BB -Variable erneut. Am Ende drucken wir alle Werte mit der Printf -Funktion.

Ausgang

Abschluss

Die Betreiber spielen eine sehr wichtige Rolle in der Programmiersprache. In diesem Artikel haben wir zwei Operatoren besprochen, die nur mit einzelnen Operanden arbeiten und die Leistung des Code in der C -Programmiersprache an die Erhöhung der Code erhöhen. Beide * Und & Die Betreiber schließen in ihrer Bedeutung und Funktionen als ab * wird für "den variablen Wert zurückgibt" während & ist für „Manipulation von Werten in der Laufzeit durch Annahme von Speicheradressen“.