C++-Funktionen
C++-Funktionen
In diesem Tutorial lernen wir die C++-Funktion und Funktionsausdrücke anhand von Beispielen kennen.
Eine Funktion ist ein Codeblock, der eine bestimmte Aufgabe ausführt.
Angenommen, wir müssen ein Programm erstellen, um einen Kreis zu erstellen und ihn einzufärben. Wir können zwei Funktionen erstellen, um dieses Problem zu lösen:
- eine Funktion zum Zeichnen des Kreises
- eine Funktion zum Einfärben des Kreises
Die Aufteilung eines komplexen Problems in kleinere Teile macht unser Programm leicht verständlich und wiederverwendbar.
Es gibt zwei Arten von Funktionen:
- Standardbibliotheksfunktionen: Vordefiniert in C++
- Benutzerdefinierte Funktion: Erstellt von Benutzern
In diesem Tutorial konzentrieren wir uns hauptsächlich auf benutzerdefinierte Funktionen.
Benutzerdefinierte C++-Funktion
C++ erlaubt dem Programmierer, seine eigene Funktion zu definieren.
Eine benutzerdefinierte Funktion gruppiert Code, um eine bestimmte Aufgabe auszuführen, und dieser Codegruppe wird ein Name (Bezeichner) gegeben.
Wenn die Funktion von irgendeinem Teil des Programms aufgerufen wird, führt alles die Codes aus, die im Hauptteil der Funktion definiert sind.
C++-Funktionsdeklaration
Die Syntax zum Deklarieren einer Funktion lautet:
returnType functionName (parameter1, parameter2,...) {
// function body
}
Hier ist ein Beispiel für eine Funktionsdeklaration.
// function declaration
void greet() {
cout << "Hello World";
}
Hier,
- der Name der Funktion ist
greet()
- der Rückgabetyp der Funktion ist
void
- Die leeren Klammern bedeuten, dass es keine Parameter hat
- der Funktionskörper wird in
{}
geschrieben
Hinweis: Wir werden etwas über returnType
erfahren und parameters
später in diesem Tutorial.
Aufruf einer Funktion
Im obigen Programm haben wir eine Funktion namens greet()
deklariert . Um den greet()
zu verwenden Funktion, wir müssen sie aufrufen.
So können wir den obigen greet()
aufrufen Funktion.
int main() {
// calling a function
greet();
}

Beispiel 1:Einen Text anzeigen
#include <iostream>
using namespace std;
// declaring a function
void greet() {
cout << "Hello there!";
}
int main() {
// calling the function
greet();
return 0;
}
Ausgabe
Hello there!
Funktionsparameter
Wie oben erwähnt, kann eine Funktion mit Parametern (Argumenten) deklariert werden. Ein Parameter ist ein Wert, der beim Deklarieren einer Funktion übergeben wird.
Betrachten wir zum Beispiel die folgende Funktion:
void printNum(int num) {
cout << num;
}
Hier die int
Variable Zahl ist der Funktionsparameter.
Beim Aufruf der Funktion übergeben wir einen Wert an den Funktionsparameter.
int main() {
int n = 7;
// calling the function
// n is passed to the function as argument
printNum(n);
return 0;
}
Beispiel 2:Funktion mit Parametern
// program to print a text
#include <iostream>
using namespace std;
// display a number
void displayNum(int n1, float n2) {
cout << "The int number is " << n1;
cout << "The double number is " << n2;
}
int main() {
int num1 = 5;
double num2 = 5.5;
// calling the function
displayNum(num1, num2);
return 0;
}
Ausgabe
The int number is 5 The double number is 5.5
Im obigen Programm haben wir eine Funktion verwendet, die einen int
hat Parameter und ein double
Parameter.
Wir passieren dann num1 und num2 als Argumente. Diese Werte werden von den Funktionsparametern n1 gespeichert und n2 bzw..

Hinweis: Der Typ der Argumente, die beim Aufruf der Funktion übergeben werden, muss mit den entsprechenden Parametern übereinstimmen, die in der Funktionsdeklaration definiert sind.
Rückgabeerklärung
In den obigen Programmen haben wir void in der Funktionsdeklaration verwendet. Zum Beispiel
void displayNumber() {
// code
}
Das bedeutet, dass die Funktion keinen Wert zurückgibt.
Es ist auch möglich, einen Wert von einer Funktion zurückzugeben. Dazu müssen wir den returnType
angeben der Funktion während der Funktionsdeklaration.
Dann die return
-Anweisung kann verwendet werden, um einen Wert von einer Funktion zurückzugeben.
Zum Beispiel
int add (int a, int b) {
return (a + b);
}
Hier haben wir den Datentyp int
statt void
. Das bedeutet, dass die Funktion einen int
zurückgibt Wert.
Der Code return (a + b);
gibt die Summe der beiden Parameter als Funktionswert zurück.
Die return
-Anweisung zeigt an, dass die Funktion beendet wurde. Jeder Code nach return
innerhalb der Funktion wird nicht ausgeführt.
Beispiel 3:Zwei Zahlen addieren
// program to add two numbers using a function
#include <iostream>
using namespace std;
// declaring a function
int add(int a, int b) {
return (a + b);
}
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
Ausgabe
100 + 78 = 178
Im obigen Programm ist die add()
Funktion wird verwendet, um die Summe zweier Zahlen zu finden.
Wir passieren zwei int
Literale 100
und 78
beim Aufruf der Funktion.
Den Rückgabewert der Funktion speichern wir in der Variablen sum , und dann drucken wir es aus.

Beachten Sie diese Summe ist eine Variable von int
Typ. Das liegt daran, dass der Rückgabewert von add()
ist int
Typ.
Funktionsprototyp
In C++ sollte der Code der Funktionsdeklaration vor dem Funktionsaufruf stehen. Wenn wir jedoch eine Funktion nach dem Funktionsaufruf definieren möchten, müssen wir den Funktionsprototyp verwenden. Zum Beispiel
// function prototype
void add(int, int);
int main() {
// calling the function before declaration.
add(5, 3);
return 0;
}
// function definition
void add(int a, int b) {
cout << (a + b);
}
Im obigen Code lautet der Funktionsprototyp:
void add(int, int);
Dadurch erhält der Compiler Informationen über den Funktionsnamen und seine Parameter. Deshalb können wir den Code verwenden, um eine Funktion aufzurufen, bevor die Funktion definiert wurde.
Die Syntax eines Funktionsprototyps lautet:
returnType functionName(dataType1, dataType2, ...);
Beispiel 4:C++-Funktionsprototyp
// using function definition after main() function
// function prototype is declared before main()
#include <iostream>
using namespace std;
// function prototype
int add(int, int);
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
// function definition
int add(int a, int b) {
return (a + b);
}
Ausgabe
100 + 78 = 178
Das obige Programm ist nahezu identisch mit Beispiel 3 . Der einzige Unterschied besteht darin, dass hier die Funktion nach definiert wird der Funktionsaufruf.
Deshalb haben wir in diesem Beispiel einen Funktionsprototyp verwendet.
Vorteile der Verwendung benutzerdefinierter Funktionen
- Funktionen machen den Code wiederverwendbar. Wir können sie einmal deklarieren und mehrfach verwenden.
- Funktionen machen das Programm einfacher, da jede kleine Aufgabe in eine Funktion unterteilt ist.
- Funktionen erhöhen die Lesbarkeit.
C++-Bibliotheksfunktionen
Bibliotheksfunktionen sind die eingebauten Funktionen in der C++-Programmierung.
Programmierer können Bibliotheksfunktionen verwenden, indem sie die Funktionen direkt aufrufen; Sie müssen die Funktionen nicht selbst schreiben.
Einige allgemeine Bibliotheksfunktionen in C++ sind sqrt()
, abs()
, isdigit()
usw.
Um Bibliotheksfunktionen zu verwenden, müssen wir normalerweise die Header-Datei einbinden, in der diese Bibliotheksfunktionen definiert sind.
Zum Beispiel, um mathematische Funktionen wie sqrt()
zu verwenden und abs()
, müssen wir die Header-Datei cmath
einbinden .
Beispiel 5:C++-Programm zum Finden der Quadratwurzel einer Zahl
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double number, squareRoot;
number = 25.0;
// sqrt() is a library function to calculate the square root
squareRoot = sqrt(number);
cout << "Square root of " << number << " = " << squareRoot;
return 0;
}
Ausgabe
Square root of 25 = 5
In diesem Programm ist der sqrt()
Die Bibliotheksfunktion wird verwendet, um die Quadratwurzel einer Zahl zu berechnen.
Die Funktionsdeklaration von sqrt()
ist im cmath
definiert Header-Datei. Deshalb müssen wir den Code #include <cmath>
verwenden um den sqrt()
zu verwenden Funktion.
Weitere Informationen finden Sie unter Funktionen der C++-Standardbibliothek.
C Sprache
- C++-Operatoren
- C++-Kommentare
- Übergeben eines Arrays an eine Funktion in der C++-Programmierung
- C++ Friend-Funktion und Friend-Klassen
- 10 beliebte Funktionen in Stratasys Insight
- Überladen von C++-Operatoren mit Beispielen
- Python-Lambda-Funktionen mit BEISPIELE
- Verilog-Funktionen
- C - Funktionen
- C++-Überladung (Operator und Funktion)