Rumah > pembangunan bahagian belakang > C++ > Teknologi lulus parameter dalam C/C++

Teknologi lulus parameter dalam C/C++

WBOY
Lepaskan: 2023-08-31 13:41:06
ke hadapan
816 orang telah melayarinya

Teknologi lulus parameter dalam C/C++

Dalam C, kita boleh lulus parameter dalam dua cara berbeza. Ini adalah panggilan mengikut nilai dan panggilan mengikut alamat dan dalam C++ kita boleh mendapatkan teknik lain. Ini dipanggil memanggil dengan rujukan. Mari kita lihat kesannya dan cara ia berfungsi.

Mula-mula kita akan lihat panggilan mengikut nilai. Dalam teknik ini, parameter disalin ke dalam parameter fungsi. Jadi jika beberapa pengubahsuaian dibuat, ini akan mengemas kini nilai yang disalin, bukan nilai sebenar.

Contoh

#include <iostream>
using namespace std;
void my_swap(int x, int y) {
   int temp;
   temp = x;
   x = y;
   y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(a, b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (10, 40)
Salin selepas log masuk

Panggilan melalui alamat berfungsi dengan menghantar alamat pembolehubah ke dalam fungsi. Jadi apabila fungsi mengemas kini nilai yang ditunjukkan oleh alamat itu, nilai sebenar dikemas kini secara automatik.

Contoh

#include <iostream>
using namespace std;
void my_swap(int *x, int *y) {
   int temp;
   temp = *x;
   *x = *y;
   *y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(&a, &b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (40, 10)
Salin selepas log masuk
Salin selepas log masuk

Sama seperti panggilan alamat, di sini kami menggunakan panggilan rujukan. Ini ialah ciri khusus C++. Kita perlu lulus pembolehubah rujukan parameter, jadi untuk mengemas kininya, nilai sebenar akan dikemas kini. Hanya dalam definisi fungsi kita perlu meletakkan & sebelum nama pembolehubah.

Contoh

#include <iostream>
using namespace std;
void my_swap(int &x, int &y) {
   int temp;
   temp = x;
   x = y;
   y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(a, b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (40, 10)
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Teknologi lulus parameter dalam C/C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan