Fonctions en C
Introduction aux fonctions
Les fonctions en C représentent des blocs de code réutilisables, regroupés sous un nom spécifique similaire à une variable. Elles peuvent être appelées par ce nom pour exécuter leur code. Ce concept est fondamental pour structurer et organiser vos programmes, améliorant ainsi leur lisibilité et leur maintenabilité.
Syntaxe des fonctions
La déclaration d'une fonction suit une syntaxe particulière :
return_type nom(arguments) {
// Code à exécuter
}
Chaque fonction est composée de plusieurs éléments : - return_type : indique le type de donnée que la fonction renverra. - nom : le nom de votre fonction, qui doit être unique. - arguments : une liste de paramètres que la fonction peut utiliser pour traiter des données.
Déclaration d'une fonction
Prenons un exemple d'une fonction qui affiche un message de salutation dans la console :
void saluer(void) {
puts("Salut !");
}
Cette fonction, saluer()
, utilise le type void
pour signifier qu'elle ne renvoie aucune valeur une fois exécutée.
Appel d'une fonction
Pour invoquer une fonction après sa déclaration, on utilise la syntaxe suivante, qui inclut le nom de la fonction suivi de parenthèses :
#include
void saluer(void) {
puts("Salut !");
}
int main() {
saluer();
return 0;
}
L'exécution de ce code affichera :
Salut !
Passage d'arguments
Les valeurs que l'on passe à une fonction lors de son appel sont appelées arguments. Elles représentent les valeurs d'entrée effectives que la fonction peut traiter :
#include
void max(int x, int y) {
if (x > y)
printf("%d est le plus grand nombre\n", x);
else
printf("%d est le plus grand nombre\n", y);
}
int main() {
int a = 20;
int b = 30;
max(a, b);
return 0;
}
Retourner des valeurs
Une fonction peut aussi renvoyer une valeur à l'endroit où elle a été appelée, en utilisant le mot-clé return
. C'est très utile pour effectuer des calculs et pour retourner des résultats. Le type de retour est défini avant le nom de la fonction :
#include
int additionner(int a, int b) {
return a + b;
}
int main(void) {
int resultat = additionner(1, 1);
printf("%d\n", resultat);
}