Kursinhalt
C++ Funktionen
C++ Funktionen
Rückgabe von Werten mit Einfachen Datentypen
In C++ können Funktionen Werte von einfachen Datentypen wie Ganzzahlen, Gleitkommazahlen und Zeichen zurückgeben. Um den Rückgabetyp einer Funktion zu definieren, geben Sie den Datentyp vor dem Funktionsnamen in der Funktionssignatur an.
Wenn die Funktion ausgeführt wird, kann sie einen Wert berechnen, der dann mit der return
-Anweisung zurückgegeben wird. Diese Art des Rückgabewerts wurde in den vorherigen Codebeispielen verwendet:
main
#include <iostream> // Function that adds two integers and returns the result int addNumbers(const int a, const int b) { int sum = a + b; return sum; } int main() { int num1 = 3; int num2 = 5; // Call the function and store the returned result in a variable int result = addNumbers(num1, num2); // Print the result std::cout << "The sum of " << num1 << " and " << num2 << " is: " << result << std::endl; }
Die addNumbers()
Funktion wird deklariert, um einen Ganzzahlwert zurückzugeben, indem vor dem Funktionsnamen der int
-Spezifizierer verwendet wird. Sie berechnet die Summe von a
und b
und gibt das Ergebnis als int
zurück.
Hinweis
Stellen Sie sicher, dass die Variable, in der Sie den zurückgegebenen Wert innerhalb des
main()
Blocks speichern möchten, dem Datentyp des entsprechenden Rückgabewerts entspricht.
Bitte beachten Sie, dass der Rückgabewert der Funktion nur innerhalb der Funktionssignatur angegeben werden kann. Selbst wenn Sie versuchen, einen Wert eines anderen Typs mittels des return
-Statements zurückzugeben, wird er automatisch in den in der Funktionssignatur deklarierten Datentyp umgewandelt:
main
#include <iostream> // Function that adds two integers and returns the result int addNumbers(const double a, const double b) { double sum = a + b; return sum; } int main() { double num1 = 3.5; double num2 = 5.1; // Call the function and store the returned result in a variable int result = addNumbers(num1, num2); // Print the result std::cout << "The sum of " << num1 << " and " << num2 << " is: " << result << std::endl; }
Wir beobachten, dass die innerhalb der Funktion berechnete Summe vom Typ double
ist, aber der Rückgabetyp der Funktion als int
deklariert wurde. Folglich wurde der endgültige Rückgabewert explizit in den int-Datentyp konvertiert, was zu 8
anstelle von 8.6
führte.
Hinweis
Beachten Sie, dass wir nur einen einzigen Wert aus einer Funktion mithilfe eines einfachen Datentyp-Spezifizierers zurückgeben können. Um mehrere Werte zurückzugeben, sollten wir Arrays oder benutzerdefinierte Strukturen (Klassen) verwenden.
Danke für Ihr Feedback!