Ta program od uporabnika vzame tri cela števila in jih s kazalci zamenja v cikličnem vrstnem redu.
Če želite razumeti ta primer, morate poznati naslednje programske teme C ++:
- Kazalci C ++
- Klic C ++ po referenci: Uporaba kazalcev (z primeri)
Tri spremenljivke, ki jih vnese uporabnik, so shranjene v spremenljivkah a, b in c.
Nato se te spremenljivke posredujejo funkciji cyclicSwap()
. Namesto posredovanja dejanskih spremenljivk se posredujejo naslovi teh spremenljivk.
Ko se te spremenljivke v cyclicSwap()
funkciji zamenjajo v cikličnem vrstnem redu, main
se samodejno zamenjajo tudi spremenljivke a, b in c v funkciji.
Primer: Program za zamenjavo elementov s klicem po referenci
#include using namespace std; void cyclicSwap(int *a, int *b, int *c); int main() ( int a, b, c; cout <> a>> b>> c; cout << "Value before swapping: " << endl; cout << "a, b and c respectively are: " << a << ", " << b << ", " << c << endl; cyclicSwap(&a, &b, &c); cout << "Value after swapping numbers in cycle: " << endl; cout << "a, b and c respectively are: " << a << ", " << b << ", " << c << endl; return 0; ) void cyclicSwap(int *a, int *b, int *c) ( int temp; temp = *b; *b = *a; *a = *c; *c = temp; )
Izhod
Vnesite vrednost a, b oziroma c: 1 2 3 Vrednost pred zamenjavo: a = 1 b = 2 c = 3 Vrednost po zamenjavi števil v ciklu: a = 3 b = 1 c = 2
Upoštevajte, da iz cyclicSwap()
funkcije nismo vrnili nobene vrednosti .