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 aan pointers toewijzen, waardoor 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 rekeningsaldo. Transacties zoals stortingen of opnames kunnen dit saldo wijzigen. Opnames mogen het saldo echter niet negatief maken. Schrijf een programma dat het rekeningsaldo bijwerkt en beheert met behulp van pointers.
Je implementeert een functie updateBalance die de transactie uitvoert door het saldo via een pointer aan te passen.
- Controleer binnen de functie
updateBalanceof de transactie een opname is die tot een negatief saldo zou leiden:- 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 het saldo bij door amount 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.