single
Toepassingen van Pointers
Veeg om het menu te tonen
Wanneer je een variabele aan een functie doorgeeft, geef je in feite de waarde ervan door. Dit betekent dat de functie een kopie van de gegevens ontvangt. Eventuele wijzigingen die binnen de functie worden aangebracht, beïnvloeden de oorspronkelijke variabele niet.
main.cpp
12345678910#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
We kunnen pointers gebruiken om een functie de oorspronkelijke variabele te laten wijzigen. Dit houdt in dat een geheugenadres als argument wordt doorgegeven in plaats van de daadwerkelijke waarde.
main.cpp
123456789101112#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Het is mogelijk om het aanmaken van een pointer naar een variabele over te slaan en in plaats daarvan direct de adres-van-operator te gebruiken bij het doorgeven van een variabele.
Veeg om te beginnen met coderen
Schrijf een functie die de waarden van twee integer-variabelen verwisselt met behulp van pointers.
- Maak een functie
swapdie twee pointers naar integers als parameters ontvangt. - Gebruik binnen de functie een tijdelijke variabele om de waarde van de eerste variabele op te slaan.
- Ken de waarde van de tweede variabele toe aan de eerste variabele via pointer-dereferencing.
- Ken de waarde uit de tijdelijke variabele toe aan de tweede variabele via pointer-dereferencing.
- Roep in
mainde functieswapaan en geef de adressen van de twee variabelen door.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.