Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Tilordning av Adresser til Pekere | Grunnleggende om Pekere
C++-Pekere og Referanser
Seksjon 1. Kapittel 2
single

single

bookTilordning av Adresser til Pekere

Sveip for å vise menyen

Når du arbeider med pekere, er korrekt initialisering viktig for å sikre at de peker til gyldige minneadresser og for å forhindre uventet oppførsel.

Adresse- og dereferanseoperatorer

For å tilordne en verdi til pekeren må vi bruke adresse-operatoren (&), og for å få tilgang til verdien på minneadressen må vi bruke dereferanseoperatoren.

  • &: adresse-operatoren, returnerer minneadressen til operanden;

  • *: dereferanseoperatoren, returnerer verdien som er lagret på minneadressen.

main.cpp

main.cpp

copy
12345678
#include <iostream> int main() { int variable = 10; std::cout << &variable << std::endl; std::cout << *(&variable) << std::endl; }

Ved å bruke adresse-operatoren (&), kan vi tildele disse adressene til pekere, og dermed opprette en direkte kobling mellom pekeren og minneplassen den peker til.

Oppgave

Sveip for å begynne å kode

I et banksystem har hver kunde en kontosaldo. Transaksjoner som innskudd eller uttak kan endre denne saldoen. Uttak kan imidlertid ikke føre til at saldoen blir negativ. Skriv et program som oppdaterer og administrerer kontosaldoen ved hjelp av pekere.

Du skal implementere en funksjon updateBalance som utfører transaksjonen ved å endre saldoen gjennom en peker.

  1. Inne i funksjonen updateBalance, sjekk om transaksjonen er et uttak som vil føre til negativ saldo:
    • Hvis amount er negativ og *p_balance + amount < 0, er ikke transaksjonen tillatt.
    • Returner false i dette tilfellet.
  2. Hvis transaksjonen er tillatt, oppdater saldoen ved å legge til amount til *p_balance ved hjelp av peker-dereferering.
  3. Returner true for å indikere en vellykket transaksjon.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 2
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

some-alt