Ця програма бере у користувача три цілі числа та обмінює їх у циклічному порядку за допомогою покажчиків.
Щоб зрозуміти цей приклад, ви повинні знати наступні теми програмування на C ++:
- Вказівники на C ++
- Виклик C ++ за посиланням: Використання покажчиків (з прикладами)
Три змінні, введені користувачем, зберігаються у змінних a, b та c відповідно.
Потім ці змінні передаються функції cyclicSwap()
. Замість передачі фактичних змінних передаються адреси цих змінних.
Коли ці змінні замінюються у циклічному порядку у cyclicSwap()
функції, змінні a, b та c у main
функції також автоматично міняються місцями.
Приклад: Програма для обміну елементами за допомогою виклику за посиланням
#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; )
Вихідні дані
Введіть значення a, b та c відповідно: 1 2 3 Значення перед заміною: a = 1 b = 2 c = 3 Значення після заміни чисел у циклі: a = 3 b = 1 c = 2
Зверніть увагу, що ми не повернули жодного значення cyclicSwap()
функції.