C++ Fonctions avec exemples de programmes
โก Rรฉsumรฉ intelligent
Fonctions dans C++ Regroupez les instructions liรฉes en blocs nommรฉs rรฉutilisables qui reรงoivent une entrรฉe, la traitent et renvoient une sortie. Les programmes combinent des fonctions de bibliothรจque intรฉgrรฉes et des fonctions dรฉfinies par l'utilisateur, chacune dรฉclarรฉe, dรฉfinie et appelรฉe afin d'รฉviter la duplication de code.

Qu'est-ce qu'une fonction dans C++?
Une fonction dans C++ fait rรฉfรฉrence ร un groupe d'instructions qui prend une entrรฉe, la traite et renvoie une sortie. Lโidรฉe derriรจre une fonction est de combiner des tรขches communes effectuรฉes de maniรจre rรฉpรฉtรฉe. Si vous avez des entrรฉes diffรฉrentes, vous nโรฉcrirez plus le mรชme code. Vous appellerez simplement la fonction avec un ensemble de donnรฉes diffรฉrent appelรฉ paramรจtres.
Chaque projet rรฉcompensรฉ par un C++ le programme a au moins une fonction, la fonction main(). Vous pouvez diviser votre code en diffรฉrentes fonctions. Cette division doit รชtre telle que chaque fonction accomplisse une tรขche spรฉcifique.
Il existe de nombreuses fonctions intรฉgrรฉes dans le C++ bibliothรจque standard. Vous pouvez appeler ces fonctions dans votre programme.
Pourquoi utiliser des fonctions ?
Il existe de nombreux avantages associรฉs ร lโutilisation des fonctions. Ceux-ci inclus:
- Chaque fonction rassemble le code associรฉ. Cela permet aux programmeurs de comprendre plus facilement le code.
- Les fonctions facilitent la programmation en รฉliminant la rรฉpรฉtition du code.
- Les fonctions facilitent la rรฉutilisation du code. Vous pouvez appeler la mรชme fonction pour effectuer une tรขche dans diffรฉrentes sections du programme ou mรชme en dehors du programme.
Fonctions intรฉgrรฉes
In C++, les fonctions de la bibliothรจque sont intรฉgrรฉes C++ fonctions. Pour utiliser ces fonctions, il vous suffit de les invoquer/appeler directement. Vous n'รชtes pas obligรฉ d'รฉcrire les fonctions vous-mรชme.
Exemple 1:
#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; }
Sortie :
Voici une capture d'รฉcran du code :
Code Explication:
- Incluez le fichier d'en-tรชte iostream dans notre programme pour utiliser ses fonctions.
- Incluez la bibliothรจque cmath pour utiliser ses fonctions. Nous voulons utiliser la fonction sqrt() qui y est dรฉfinie.
- Incluez l'espace de noms std dans notre code pour utiliser ses classes sans l'appeler.
- Appelez la fonction main(). La logique du programme doit รชtre ajoutรฉe dans le corps de cette fonction.
- Dรฉclarez deux variables doubles, num et squareRoot.
- Imprimez du texte sur la console. Le texte demande ร l'utilisateur de saisir un numรฉro.
- Lire les entrรฉes de l'utilisateur ร partir du clavier. L'entrรฉe deviendra la valeur de la variable num.
- Appelez la fonction bibliothรจque sqrt(), qui calcule la racine carrรฉe d'un nombre. Nous avons passรฉ le paramรจtre num ร la fonction, ce qui signifie qu'elle calculera la racine carrรฉe de num. Cette fonction est dรฉfinie dans la bibliothรจque cmath.
- Imprimez le nombre saisi par l'utilisateur, sa racine carrรฉe et un autre texte sur la console.
- Le programme doit renvoyer de la valeur une fois terminรฉ.
- Fin du corps de la fonction main().
Fonctions dรฉfinies par l'utilisateur
C++ permet aux programmeurs de dรฉfinir leurs propres fonctions. Le but de la fonction est de regrouper le code associรฉ. Le code reรงoit ensuite un identifiant unique, le nom de la fonction.
La fonction peut รชtre appelรฉe/invoquรฉe depuis nโimporte quelle autre partie du programme. Il exรฉcutera ensuite le code dรฉfini dans son corps.
Exemple 2:
#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; }
Sortie :
Voici une capture d'รฉcran du code :
Code Explication:
- Incluez le fichier d'en-tรชte iostream dans notre programme pour utiliser ses fonctions.
- Incluez l'espace de noms std dans notre code pour utiliser ses classes sans l'appeler.
- Crรฉez une fonction dรฉfinie par l'utilisateur nommรฉe sayHello().
- Imprime du texte sur la console lorsque la fonction sayHello() est appelรฉe.
- Fin du corps de la fonction sayHello().
- Appelez la fonction main(). La logique du programme doit รชtre ajoutรฉe dans le corps de cette fonction.
- Appelez/invoquez la fonction nommรฉe sayHello().
- Le programme doit renvoyer de la valeur une fois terminรฉ.
- Fin du corps de la fonction main().
Le compilateur doit connaรฎtre une fonction avant qu'elle ne soit utilisรฉe.
Dรฉclaration de fonction/Prototype
Si vous dรฉfinissez une fonction dรฉfinie par l'utilisateur aprรจs la fonction main(), le C++ compilateur renverra une erreur. La raison en est que le compilateur ne connaรฎt pas les dรฉtails de la fonction dรฉfinie par l'utilisateur. Les dรฉtails incluent son nom, les types d'arguments et leurs types de retour.
In C++, la dรฉclaration/prototype de fonction dรฉclare une fonction sans corps. Cela donne au compilateur les dรฉtails de la fonction dรฉfinie par l'utilisateur.
Dans la dรฉclaration/prototype, nous incluons le type de retour, le nom de la fonction et les types d'arguments. Les noms des arguments ne sont pas ajoutรฉs. Cependant, l'ajout des noms d'arguments ne gรฉnรจre aucune erreur.
Dรฉfinition de la fonction
Le but de la dรฉclaration de fonction est d'indiquer au C++ compilateur sur le nom de la fonction, le type de retour et les paramรจtres. Une dรฉfinition de fonction indique au C++ compilateur sur le corps de la fonction.
Syntaxe
return_datatype function_name( parameters) {
function body
}
Dโaprรจs ce qui prรฉcรจde, une dรฉfinition de fonction comporte lโen-tรชte et le corps de la fonction. Voici une explication des paramรจtres :
- type_de_donnรฉes_de_retour : certaines fonctions renvoient une valeur. Ce paramรจtre indique le type de donnรฉes de la valeur de retour. D'autres fonctions ne renvoient aucune valeur. Dans ce cas, la valeur de ce paramรจtre est nulle.
- function_name- C'est le nom de la fonction. Le nom de la fonction et les paramรจtres forment la signature de la fonction.
- Paramรจtres : il sโagit du type, de lโordre et du nombre de paramรจtres de la fonction. Certaines fonctions nโont pas de paramรจtres.
- corps de fonction- ce sont des dรฉclarations dรฉfinissant ce que fera la fonction.
Appel de fonction
Pour quโune fonction effectue la tรขche spรฉcifiรฉe et renvoie une sortie, elle doit รชtre appelรฉe. Lorsque vous appelez une fonction, elle exรฉcute les instructions ajoutรฉes dans son corps.
Une fonction est appelรฉe par son nom. Si elle prend des paramรจtres, leurs valeurs doivent รชtre fournies lors de l'appel. Si elle ne prend aucun paramรจtre, aucune valeur ne doit รชtre fournie lors de l'appel.
Passer des arguments
In C++, un argument/paramรจtre correspond aux donnรฉes transmises ร une fonction lors de son appel. Les valeurs doivent รชtre initialisรฉes ร leurs variables respectives.
Lors de l'appel d'une fonction, le nombre d'arguments doit correspondre ร celui des paramรจtres. Autrement dit, les valeurs transmises doivent รชtre รฉgales au nombre de paramรจtres. De plus, le type des valeurs doit รฉgalement correspondre ร celui des paramรจtres. Si le premier paramรจtre est un entier, la valeur qui lui est transmise doit รฉgalement รชtre un entier.
Il est possible d'attribuer des valeurs par dรฉfaut aux paramรจtres d'une fonction. Si aucune valeur n'est spรฉcifiรฉe lors de l'appel de la fonction, la valeur par dรฉfaut sera utilisรฉe.
Exemple 3 : Comment รฉcrire et appeler une fonction
#include <iostream> using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum; return 0; } int addFunc(int num1, int num2) { int addFunc; addFunc = num1 + num2; return addFunc; }
Sortie :
Voici une capture d'รฉcran du code :
Code Explication:
- Incluez le fichier d'en-tรชte iostream dans notre programme pour utiliser ses fonctions.
- Incluez l'espace de noms std dans notre code pour utiliser ses classes sans l'appeler.
- Dรฉclarez une fonction nommรฉe addFunc() qui prend deux paramรจtres entiers. Cela crรฉe le prototype de fonction.
- Appelez la fonction main(). La logique du programme doit รชtre ajoutรฉe dans le corps de cette fonction.
- Dรฉclarez trois variables entiรจres, x, y et somme.
- Imprimez du texte sur la console. Le texte demande ร l'utilisateur de saisir deux chiffres.
- Lisez la saisie de l'utilisateur ร partir du clavier. L'utilisateur doit saisir deux nombres pour les variables x et y, sรฉparรฉs par un espace.
- Appelez la fonction addFunc() et passez-lui les paramรจtres x et y. La fonction fonctionnera sur ces paramรจtres et affectera la sortie ร la somme variable.
- Imprimez les valeurs des variables x, y et sum sur la console avec d'autres textes.
- La fonction doit renvoyer une valeur une fois terminรฉe avec succรจs.
- Fin du corps de la fonction main().
- Dรฉfinition de la fonction. Nous dรฉfinissons la fonction addFunc(). Nous indiquerons ce que la fonction fera dans son corps, le { }.
- Dรฉclaration d'une variable entiรจre nommรฉe addFunc.
- Ajouter les valeurs des paramรจtres num1 et num2 et affecter le rรฉsultat ร la variable addFunc.
- La fonction addFunc() doit renvoyer la valeur de la variable addFunc.
- Fin du corps de la fonction, c'est-ร -dire dรฉfinition de la fonction.






