Heim  >  Artikel  >  Backend-Entwicklung  >  Der Unterschied zwischen formalen Parametern und tatsächlichen Parametern in der C-Sprache

Der Unterschied zwischen formalen Parametern und tatsächlichen Parametern in der C-Sprache

下次还敢
下次还敢Original
2024-04-27 22:27:32818Durchsuche

Formale Parameter und tatsächliche Parameter sind Konzepte in Funktionsaufrufen. Formale Parameter werden verwendet, um tatsächliche Daten zu empfangen, und tatsächliche Parameter werden verwendet, um tatsächliche Daten zu übergeben. Die formalen Parameter befinden sich im Funktionsheader, und die tatsächlichen Parameter befinden sich beim Aufruf der Funktion. Die formalen Parameter und die tatsächlichen Parameter stellen eine einseitige Beziehung her, und die tatsächlichen Parameter können die formalen Parameter ändern, jedoch nicht umgekehrt. Der Umfang der formalen Parameter ist auf die Funktion beschränkt, die tatsächlichen Parameter sind jedoch unabhängig vom Datentyp der Funktion. Der obere formale Parameter muss einen eindeutigen Typ angeben und der tatsächliche Parametertyp muss mit dem formalen Parameter kompatibel sein.

Der Unterschied zwischen formalen Parametern und tatsächlichen Parametern in der C-Sprache

Formale Parameter und Aktualparameter

In der Sprache C sind Formalparameter und Aktualparameter wichtige Konzepte bei Funktionsaufrufen. Es gibt offensichtliche Unterschiede zwischen ihnen:

Bedeutung

  • Formale Parameter: In der Funktionsdefinition deklarierte Parameter, die zum Empfangen der tatsächlichen an die Funktion übergebenen Daten verwendet werden.
  • Tatsächliche Argumente: Der tatsächliche Datenwert, der an die Funktion übergeben wird, wenn die Funktion aufgerufen wird.

Position

  • Formale Parameter befinden sich im Funktionsheader und werden in Form von Variablen deklariert.
  • Die tatsächlichen Parameter befinden sich beim Aufruf der Funktion in Klammern direkt nach dem Funktionsnamen.

Assoziation

  • Formale Parameter und tatsächliche Parameter werden während Funktionsaufrufen verknüpft, sodass tatsächliche Parameter Daten an formale Parameter übergeben können.
  • Die Zuordnung ist einseitig, das heißt, die tatsächlichen Parameter können die formalen Parameter ändern, die formalen Parameter können die tatsächlichen Parameter jedoch nicht ändern.

Geltungsbereich

  • Der Geltungsbereich formaler Parameter ist auf das Innere der Funktion beschränkt.
  • Der Umfang der tatsächlichen Parameter ist unabhängig von der Funktion und wird durch die interne Funktion nicht beeinflusst.

Datentyp

  • Formale Parameter müssen einen expliziten Datentyp angeben.
  • Der Datentyp des Aktualparameters muss mit dem Typ des Formalparameters kompatibel sein.

Beispiel

Die folgende Funktionsdefinition:

<code class="c">void print_name(char *name);</code>

Unter diesen ist name ein formaler Parameter und ein Zeichenzeiger. name 是形参,是一个字符指针。

当调用此函数时,可以传递一个实参,如下所示:

<code class="c">char *myName = "John Doe";
print_name(myName);</code>

在这个例子中,myName 是传递给函数的实参。它与形参 name

Wenn Sie diese Funktion aufrufen, können Sie ein Argument wie unten gezeigt übergeben:

rrreeeIn diesem Beispiel ist myName das an die Funktion übergebene Argument. Es ist mit dem formalen Parameter name verknüpft und ermöglicht der Funktion den Zugriff auf die Zeichenfolge „John Doe“ und deren Ausgabe.

    Hinweis:
  • Bei einem Funktionsaufruf müssen Anzahl und Typ der tatsächlichen Parameter mit der formalen Parameterliste übereinstimmen.
🎜Der Standardwert des formalen Parameters kann nur in der Funktionsdefinition angegeben werden, während der Wert des tatsächlichen Parameters zum Zeitpunkt des Aufrufs übergeben werden kann. 🎜🎜

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen formalen Parametern und tatsächlichen Parametern in der C-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn