Latest web development tutorials

C ++ Zeiger Anruf

C ++ Funktion C ++ Funktion

Pointer zum Aufruf der Funktion Parameter zu übergeben , die Adressparameter auf die formalen Parameter zu kopieren.Innerhalb der Funktion verwendete Adresse zu verwenden, um den Anruf aktuellen Parameter zuzugreifen. Dies bedeutet, dass eine modifizierte Form der Parameter die aktuellen Parameter beeinflussen.

Durch die Übergabe eines Zeigerwertes, wird das Argument Zeiger auf die Funktion übergeben, ebenso wie andere Werte an die Funktion gleich. So Dementsprechend wird die folgende Funktionswap (), müssen Sie die Funktionsargument als Zeigertyp zu deklarieren, der Funktionswert für die Parameterpunkte zwei Integer - Variablen auszutauschen.

// 函数定义
void swap(int *x, int *y)
{
   int temp;
   temp = *x;	/* 保存地址 x 的值 */
   *x = *y;		/* 把 y 赋值给 x */
   *y = temp;	/* 把 x 赋值给 y */
  
   return;
}

Für weitere Einzelheiten über die C ++ Zeiger finden Sie auf der C ++ Zeiger Abschnitt.

Lassen Sie uns nun die FunktionSwap - Zeiger durch traditionelle Werte () aufrufen:

#include <iostream>
using namespace std;

// 函数声明
void swap(int *x, int *y);

int main ()
{
   // 局部变量声明
   int a = 100;
   int b = 200;
 
   cout << "交换前,a 的值:" << a << endl;
   cout << "交换前,b 的值:" << b << endl;

   /* 调用函数来交换值
    * &a 表示指向 a 的指针,即变量 a 的地址 
    * &b 表示指向 b 的指针,即变量 b 的地址 
    */
   swap(&a, &b);

   cout << "交换后,a 的值:" << a << endl;
   cout << "交换后,b 的值:" << b << endl;
 
   return 0;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

Vor dem Einschalten wird ein Wert: 100
Vor dem Einschalten, b-Werte: 200
Nach einem Austausch, ein Wert von 200
Nach dem Austausch, b-Werte: 100

C ++ Funktion C ++ Funktion