Unterschied zwischen out und ref in C

Inhaltsverzeichnis:

Unterschied zwischen out und ref in C
Unterschied zwischen out und ref in C

Video: Unterschied zwischen out und ref in C

Video: Unterschied zwischen out und ref in C
Video: C# Out parameters Vs REF parameters 2024, Juli
Anonim

Hauptunterschied – out vs. ref in C

C ist eine moderne Programmiersprache, die von Microsoft entwickelt wurde. Es wird für die Entwicklung verschiedener Anwendungen für Desktop, Web und Mobile verwendet. Funktionen oder Methoden sind ein Konzept in der Programmierung. Diese Gruppe von Anweisungen, die zum Ausführen einer bestimmten Aufgabe verwendet werden, wird als Funktion oder Methode bezeichnet. In C-Programmen beginnt die Ausführung bei main(). Es ist ein Beispiel für eine Methode. Beim Aufruf einer Methode werden Daten an die Methode übergeben oder von der Methode empfangen. Die Methode, die die neue Methode aufruft, wird als Methodenaufruf bezeichnet. Die neue Methode wird als aufgerufene Methode bezeichnet. Um die übergebenen Werte zu verw alten und das Ergebnis zurückzugeben, verwendet C Parameter. Sie sind bewertete Parameter, Ausgabeparameter und Referenzparameter. Die Wertparameter werden verwendet, um Parameter wertmäßig an die Methode zu übergeben. Die Referenzparameter werden verwendet, um Parameter per Referenz an die Methode zu übergeben. Die Ausgabeparameter werden verwendet, um das Ergebnis von der Methode zurückzugeben. In C wird das Schlüsselwort out für Ausgabeparameter und das Schlüsselwort ref zum Verweisen auf Parameter verwendet. Der Hauptunterschied zwischen out und ref in C besteht darin, dass out ein Schlüsselwort ist, das verwendet wird, um auf einen Ausgabeparameter zu verweisen, der verwendet wird, um Ergebnisse von der aufgerufenen Methode an die aufrufende Methode zu übergeben, während ref ein Schlüsselwort ist, um auf einen Referenzparameter zu verweisen, der zum Übergeben verwendet wird Daten von der aufrufenden Methode zur aufgerufenen Methode und die Daten von der aufgerufenen Methode zur aufrufenden Methode zu empfangen.

Was gibt es in C?

Die Syntax für eine Funktion oder eine Methode ist wie folgt. Eine Methode hat eine Reihe von Elementen wie Methodenname, Parameterliste, Rückgabetyp und Zugriffskennung.

(Parameterliste)

{ //Auszuführende Anweisungen

}

Jede Methode hat eine einzigartige Methode, um den Funktionsaufruf durchzuführen. Die ausführbaren Anweisungen stehen in geschweiften Klammern. Der Rückgabetyp erklärt, ob die Funktion einen Wert zurückgibt oder nicht. Wenn es keinen Rückgabetyp gibt, wird es void genannt. Der Zugriffsbezeichner wird verwendet, um die Methodenzugänglichkeit in der Anwendung anzugeben. Die Parameter werden verwendet, um Daten an die Methode zu empfangen oder zu übergeben. Es kann auch Methoden ohne Parameter geben. Parameter können Wertparameter, Ausgabeparameter oder Referenzparameter sein.

Unterschied zwischen out und ref in C
Unterschied zwischen out und ref in C

Die Ausgabeparameter werden verwendet, um Ergebnisse an die aufrufende Methode zurückzugeben. Dazu sollte der Parameter mit dem Schlüsselwort out deklariert werden. Der Ausgabeparameter erstellt keinen neuen Speicherort. Im Allgemeinen gibt eine Methode einen Wert zurück. In C ist es jedoch möglich, mithilfe von Ausgabeparametern zwei Werte von einer Funktion zurückzugeben. Siehe untenstehendes Programm.

Namespace-Anwendung1{

öffentliche Klassenberechnung{

public void display(out int a, out int b){

int Wert=5;

a=Wert;

b=Wert;

a=a a;

b=bb;

}

public static void main(String args){

int Wert1=10, Wert2=20;

Berechnung cal=neue Berechnung();

cal.display(out value1, out value2);

Console. ReadLine();

}

}

}

Die Anzeigefunktion wird aus der Hauptmethode aufgerufen. Der Wert 1 und der Wert 2 haben 10 und 20, werden aber nicht in die Methode aufgenommen. Der Wert von a ist 25 und der Wert von b ist ebenfalls 25 in der Funktion. Daher werden diese Werte zurückgegeben. Beim Drucken von Wert1 und Wert2 werden nicht 10 und 20 ausgegeben, sondern 25 und 25. Mit dem Schlüsselwort out können mehrere Werte von der Methode zurückgegeben werden.

Was ist ref in C?

Bei der Wertübergabe von Parametern wird für jeden Parameter ein neuer Speicherplatz angelegt. Die tatsächlichen Parameter, die vom Hauptprogramm gesendet wurden, ändern sich nicht. Stattdessen werden diese Werte an einen separaten Speicherort kopiert. Diese neuen Variablenkopien werden formale Parameter genannt. Siehe den folgenden Code.

Namespace-Anwendung1{

öffentliche Klassenberechnung{

public void swap(int x, int y){

int temp;

temp=x;

x=y;

y=temp;

}

public static void main(String args){

Berechnung cal=neue Berechnung();

int p=2;

int q=3;

cal.swap(p, q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Gemäß obigem Programm hat die Klasse Calculation eine Methode swap (). Im Hauptprogramm wird ein Objekt vom Typ Berechnung angelegt. Es gibt zwei Werte wie p und q. Die Variable p hat den Wert 2 und die Variable q hat den Wert 3. Diese beiden Werte werden an die Swap-Methode übergeben. Bei der Swap-Methode wird der Wert 2 in die Variable x und der Wert 3 in die Variable y kopiert. Mit der temp-Variablen werden die Werte vertauscht. Zurück im Hauptprogramm werden beim Drucken von p und q die Werte nicht vertauscht. Der p-Wert ist immer noch 2 und der q-Wert ist 3. Selbst bei der Tauschmethode werden Werte getauscht, aber nicht im Hauptprogramm widergespiegelt.

Im Gegensatz zur Übergabe von Werten wie oben ist es möglich, Parameter per Referenz zu übergeben. Eine Referenzvariable ist eine Referenz auf den Speicherplatz. Es wird kein neuer Speicherplatz angelegt. Die Änderungen in der Methode spiegeln sich im Hauptprogramm wider. In C wird auf die Referenzparameter mit dem Schlüsselwort ref verwiesen. Siehe untenstehendes Programm.

Namespace-Anwendung1{

öffentliche Klassenberechnung{

public void swap(ref int x, ref int y){

int temp;

temp=x;

x=y;

y=temp;

}

public static void main(String args){

Berechnung cal=neue Berechnung();

int p=2;

int q=3;

cal.swap(ref p, ref q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Nach obigem Programm hat die Klasse Calculation die Swap-Methode. Im Hauptprogramm wird ein Objekt vom Typ Berechnung angelegt. Das sind zwei Variablen wie p und q. Die p-Variable hat den Wert 2 und die q-Variable den Wert 3. Anstatt Werte zu übergeben, wird der Methode die Referenz auf die Speicherstellen von p und q übergeben. Diese Referenzvariablen werden mit ref bezeichnet. Bei der Swap-Methode werden die Änderungen an den tatsächlichen Parametern vorgenommen, anstatt die Werte an eine neue Stelle zu kopieren. Beim Drucken der p- und q-Werte des Hauptprogramms werden die vertauschten Werte ausgegeben. Jetzt ist der p-Wert 3 und der q-Wert 2.

Was ist die Ähnlichkeit zwischen out und ref in C?

Beide sind Schlüsselwörter, die verwendet werden, um auf die Parameter einer Methode zu verweisen

Was ist der Unterschied zwischen out und ref in C?

out gegen Schiedsrichter in C

Out ist ein Schlüsselwort in C, das verwendet wird, um auf einen Ausgabeparameter zu verweisen. Es wird verwendet, um die Ergebnisse einer aufgerufenen Methode an den Aufruf der Methode zu übergeben. Ref ist ein Schlüsselwort in C, das verwendet wird, um auf einen Referenzparameter zu verweisen. Es wird verwendet, um Daten von der aufrufenden Methode an die aufgerufene Methode zu übergeben und Daten von der aufgerufenen Methode an die aufrufende Methode zurückzugeben.
Funktionalität
Bei Verwendung des Schlüsselworts out können die Daten von der aufrufenden Methode an die aufgerufene Methode übergeben werden. Aber diese Daten werden verworfen. Es wird verwendet, um das Ergebnis von der aufgerufenen Methode an die aufrufende Methode zu übergeben. Bei Verwendung des Schlüsselworts ref werden die Daten von der aufrufenden Methode an die aufgerufene Methode übergeben und die manipulierten Daten an die aufrufende Methode zurückgegeben.
Weitergabe von Daten
Wenn das Schlüsselwort out verwendet wird, werden die Daten in einer Weise, die eine aufgerufene Methode ist, an die aufrufende Methode übergeben. Bei Verwendung des Schlüsselworts ref werden die Daten auf zwei Arten übergeben, nämlich von der aufrufenden Methode zur aufgerufenen Methode und von der aufgerufenen Methode zur aufrufenden Methode.

Zusammenfassung – Aus vs. Schiri in C

Beim Aufrufen einer Methode kann es notwendig sein, die Werte an die Methode zu übergeben und die Ergebnisse von der Methode zurückzuerh alten. C hat verschiedene Parameter, um dies zu erreichen. Die Wertparameter werden verwendet, um Parameter wertmäßig an die Methode zu übergeben. Die Referenzparameter werden verwendet, um Parameter per Referenz an die Methode zu übergeben. Die Ausgabeparameter werden verwendet, um das Ergebnis von der Methode zurückzugeben. In C wird das Schlüsselwort out für Ausgabeparameter und das Schlüsselwort ref zum Verweisen auf Parameter verwendet. Der Unterschied zwischen out und ref in C besteht darin, dass out ein Schlüsselwort ist, das verwendet wird, um auf einen Ausgabeparameter zu verweisen, der verwendet wird, um Ergebnisse von der aufgerufenen Methode an die aufrufende Methode zu übergeben, während ref ein Schlüsselwort ist, um auf einen Referenzparameter zu verweisen, der zum Übergeben von Daten verwendet wird Aufrufende Methode an aufgerufene Methode und Empfangen der Daten von der aufgerufenen Methode an aufrufende Methode.

Laden Sie das PDF von out vs ref in C herunter

Sie können die PDF-Version dieses Artikels herunterladen und gemäß Zitationshinweis für Offline-Zwecke verwenden. Bitte laden Sie die PDF-Version hier herunter: Unterschied zwischen Out und Ref in C

Empfohlen: