single
Adressen Toewijzen aan Pointers
Veeg om het menu te tonen
Bij het werken met pointers is een correcte initialisatie belangrijk om ervoor te zorgen dat ze naar geldige geheugenlocaties verwijzen en onverwacht gedrag te voorkomen.
Address-of- en dereference-operatoren
Om een waarde aan de pointer toe te wijzen, moet de address-of (&) operator worden gebruikt en om de waarde van het geheugenadres te benaderen, moet de dereference operator worden gebruikt.
-
&: de address-of-operator, retourneert het geheugenadres van zijn operand; -
*: de dereference-operator, retourneert de waarde die is opgeslagen op het geheugenadres.
main.cpp
12345678#include <iostream> int main() { int variable = 10; std::cout << &variable << std::endl; std::cout << *(&variable) << std::endl; }
Met de adres-van (&) operator kunnen we deze adressen toewijzen aan pointers, waardoor er een directe koppeling ontstaat tussen de pointer en de geheugenlocatie waarnaar deze verwijst.
Veeg om te beginnen met coderen
In een banksysteem heeft elke klant een rekeningstand. Transacties zoals stortingen of opnames kunnen deze balans wijzigen. Opnames mogen de balans echter niet negatief maken. Schrijf een programma dat de rekeningstand bijwerkt en beheert met behulp van pointers.
Je implementeert een functie updateBalance die de transactie uitvoert door de balans via een pointer aan te passen.
- Controleer binnen de functie
updateBalanceof de transactie een opname is die zou resulteren in een negatieve balans:- Als
amountnegatief is en*p_balance + amount < 0, is de transactie niet toegestaan. - Retourneer in dit geval
false.
- Als
- Als de transactie is toegestaan, werk dan de balans bij door het bedrag op te tellen bij
*p_balancevia pointer-dereferencing. - Retourneer
trueom aan te geven dat de transactie succesvol is uitgevoerd.
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.