Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Användningsområden för Pekare | Pekare Grunder
C++-Pekare och Referenser
Avsnitt 1. Kapitel 4
single

single

bookAnvändningsområden för Pekare

Svep för att visa menyn

När du skickar en variabel till en funktion skickar du i själva verket dess värde. Detta innebär att funktionen tar emot en kopia av datan. Eventuella ändringar som görs inuti funktionen påverkar inte den ursprungliga variabeln.

main.cpp

main.cpp

copy
12345678910
#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }

Vi kan använda pekare för att möjliggöra för en funktion att ändra den ursprungliga variabeln. Detta innebär att skicka en minnesadress som argument istället för det faktiska värdet.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = &num; increment(p_num); std::cout << "Original value: " << num << std::endl; }
Note
Notering

Du kan kringgå skapandet av en pekare till en variabel och istället direkt använda adressoperatorn vid överföring av en variabel.

Uppgift

Swipe to start coding

Skriv en funktion som byter värdena mellan två heltalsvariabler med hjälp av pekare.

  1. Skapa en funktion swap som tar två pekare till heltal som parametrar.
  2. Använd en temporär variabel i funktionen för att lagra värdet av den första variabeln.
  3. Tilldela värdet av den andra variabeln till den första variabeln genom att använda pekardereferering.
  4. Tilldela värdet från den temporära variabeln till den andra variabeln genom pekardereferering.
  5. Anropa main i swap och skicka adresserna till de två variablerna.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 4
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt