Ez a program három egész számot vesz el a felhasználótól, és mutatószámok segítségével ciklikus sorrendben cseréli fel őket.
A példa megértéséhez ismernie kell a következő C ++ programozási témákat:
- C ++ mutatók
- C ++ Hívás referencia alapján: Mutatók használata (példákkal)
A felhasználó által beírt három változót az a, b és c változók tárolják.
Ezután ezeket a változókat átadják a függvénynek cyclicSwap()
. A tényleges változók átadása helyett ezeknek a változóknak a címe kerül átadásra.
Ha ezeket a változókat ciklikus sorrendben cseréljük fel a cyclicSwap()
függvényben, akkor a függvény a, b és c változói main
is automatikusan felcserélődnek.
Példa: Program az elemek cseréjére a Hívás hivatkozással használatával
#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; )
Kimenet
Adja meg az a, b és c értékét: 1 2 3 Érték csere előtt: a = 1 b = 2 c = 3 Érték a ciklus számainak cseréje után: a = 3 b = 1 c = 2
Figyelje meg, hogy nem adtunk vissza értékeket a cyclicSwap()
függvényből.