Ny Uppgiftsstruktur
Hittills har du skrivit all din kod inuti main-funktionen. Men i C++ kan du skapa egna funktioner. Du kommer att utforska dem mer ingående senare — just nu fokuserar vi på grunderna så att du kan börja använda dem i kommande övningar.
Tänk på en funktion som en låda som innehåller en kodsnutt. När du behöver den koden "öppnar du lådan" genom att anropa funktionen. Om du inte anropar den, körs inte koden inuti.
Här är ett enkelt exempel:
main.cpp
1234567891011#include <iostream> // This function takes a string parameter and prints a greeting message void sayHello(std::string name) { std::cout << "Hello, " << name << "!"; } // this function doesn't return any value int main() { sayHello("Alice"); // calling your function with a parameter return 0; // main always returns 0 }
I detta program finns det två funktioner. Den första är den välkända main
, och den andra är din egen funktion sayHello
.
Observera return 0;
i slutet av main
. Detta innebär att funktionen returnerar talet 0. Senare kommer du att lära dig att funktioner även kan returnera andra typer av värden.
Funktionen sayHello
tar nu en parameter som heter name
. Det betyder att när du anropar funktionen skickar du med ett värde inom parenteserna — till exempel "Alice".
Genom att anropa sayHello("Alice")
inuti main
körs funktionen och du ser utskriften "Hello, Alice!".
Prova att ta bort anropet till funktionen sayHello
från main
så ser du att koden inuti sayHello
inte körs.
Funktionsparametrar
I C++ kan en funktion ha fler än en parameter. Du separerar dem med kommatecken i funktionsdefinitionen. Varje parameter fungerar som en variabel som håller ett värde som skickas in i funktionen när den anropas.
Till exempel:
main.cpp
1234567891011121314#include <iostream> // This function prints a greeting with a name and an age void greet(std::string name, int age) { std::cout << "Hello, " << name << "! You are " << age << " years old."; } int main() { greet("Alice", 25); std::cout << std::endl; greet("Bob", 30); return 0; }
Funktionen greet
har två parametrar, name
och age
. När du anropar greet("Alice", 25)
, tilldelas värdet "Alice" till name
och 25 till age
. Inuti funktionen kan du använda dessa variabler precis som vilka andra som helst för att anpassa meddelandet. Utdata ändras beroende på vilka värden du skickar in, vilket gör funktionen flexibel och återanvändbar för olika indata.
Det viktigaste att komma ihåg: oftast skriver du din kod inuti en förberedd funktion som sayHello
, medan huvudfunktionen redan är förifylld.
1. Vad händer om du inte anropar en funktion i ditt program?
2. Vad betyder return 0;
i funktionen main
?
3. Hur anropas en funktion med namnet sayHello
?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 3.85
Ny Uppgiftsstruktur
Svep för att visa menyn
Hittills har du skrivit all din kod inuti main-funktionen. Men i C++ kan du skapa egna funktioner. Du kommer att utforska dem mer ingående senare — just nu fokuserar vi på grunderna så att du kan börja använda dem i kommande övningar.
Tänk på en funktion som en låda som innehåller en kodsnutt. När du behöver den koden "öppnar du lådan" genom att anropa funktionen. Om du inte anropar den, körs inte koden inuti.
Här är ett enkelt exempel:
main.cpp
1234567891011#include <iostream> // This function takes a string parameter and prints a greeting message void sayHello(std::string name) { std::cout << "Hello, " << name << "!"; } // this function doesn't return any value int main() { sayHello("Alice"); // calling your function with a parameter return 0; // main always returns 0 }
I detta program finns det två funktioner. Den första är den välkända main
, och den andra är din egen funktion sayHello
.
Observera return 0;
i slutet av main
. Detta innebär att funktionen returnerar talet 0. Senare kommer du att lära dig att funktioner även kan returnera andra typer av värden.
Funktionen sayHello
tar nu en parameter som heter name
. Det betyder att när du anropar funktionen skickar du med ett värde inom parenteserna — till exempel "Alice".
Genom att anropa sayHello("Alice")
inuti main
körs funktionen och du ser utskriften "Hello, Alice!".
Prova att ta bort anropet till funktionen sayHello
från main
så ser du att koden inuti sayHello
inte körs.
Funktionsparametrar
I C++ kan en funktion ha fler än en parameter. Du separerar dem med kommatecken i funktionsdefinitionen. Varje parameter fungerar som en variabel som håller ett värde som skickas in i funktionen när den anropas.
Till exempel:
main.cpp
1234567891011121314#include <iostream> // This function prints a greeting with a name and an age void greet(std::string name, int age) { std::cout << "Hello, " << name << "! You are " << age << " years old."; } int main() { greet("Alice", 25); std::cout << std::endl; greet("Bob", 30); return 0; }
Funktionen greet
har två parametrar, name
och age
. När du anropar greet("Alice", 25)
, tilldelas värdet "Alice" till name
och 25 till age
. Inuti funktionen kan du använda dessa variabler precis som vilka andra som helst för att anpassa meddelandet. Utdata ändras beroende på vilka värden du skickar in, vilket gör funktionen flexibel och återanvändbar för olika indata.
Det viktigaste att komma ihåg: oftast skriver du din kod inuti en förberedd funktion som sayHello
, medan huvudfunktionen redan är förifylld.
1. Vad händer om du inte anropar en funktion i ditt program?
2. Vad betyder return 0;
i funktionen main
?
3. Hur anropas en funktion med namnet sayHello
?
Tack för dina kommentarer!