Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Maîtriser les fonctions en C : Structure, déclaration et bonnes pratiques

Une fonction est un groupe d'instructions réalisant une tâche. Tout programme C a au moins main(), et peut définir d'autres fonctions.

Divisez votre code en fonctions logiques, chacune effectuant une tâche précise.

Une déclaration (prototype) informe le compilateur du nom, type de retour et paramètres. Une définition fournit le corps effectif.

La bibliothèque standard C offre de nombreuses fonctions intégrées : strcat(), memcpy(), etc.

Synonymes : méthode, sous-routine, procédure.

Définition d'une fonction

Forme générale :

type_retour nom_fonction(liste_paramètres) {
    corps de la fonction
}

Composants :

Exemple : fonction max()

/* retourne le maximum entre deux nombres */
int max(int num1, int num2) {
    int result;
    if (num1 > num2)
        result = num1;
    else
        result = num2;
    return result;
}

Déclarations de fonction (prototypes)

Informent le compilateur comment appeler la fonction. Le corps peut être défini ailleurs.

type_retour nom_fonction(liste_paramètres);

Pour max() :

int max(int num1, int num2);

Les noms de paramètres sont optionnels dans la déclaration, seuls les types comptent :

int max(int, int);

Nécessaire si la fonction est définie dans un fichier source et appelée depuis un autre : déclarez-la en haut du fichier appelant.

Appel de fonction

Pour utiliser une fonction, appelez-la avec les arguments requis. Le contrôle passe à la fonction appelée, qui exécute sa tâche, puis retourne le contrôle (via return ou fin de corps).

Si la fonction retourne une valeur, stockez-la. Exemple :

#include <stdio.h>
int max(int num1, int num2);  // prototype

int main() {
    int a = 100, b = 200, ret;
    ret = max(a, b);           // appel
    printf("Max = %d\n", ret);
    return 0;
}

int max(int num1, int num2) {
    int result;
    if (num1 > num2) result = num1;
    else result = num2;
    return result;
}

Résultat : Max = 200

Arguments de fonction

Si une fonction utilise des arguments, elle doit déclarer des variables (paramètres formels) pour les recevoir. Comportement comme variables locales : créées à l'entrée, détruites à la sortie.

Deux modes de passage :

N°Mode et description
1Passage par valeur : copie la valeur de l'argument dans le paramètre. Modifications locales sans effet sur l'argument original. Défaut en C.
2Passage par référence : copie l'adresse de l'argument. La fonction accède à l'original via l'adresse. Modifications affectent l'argument.

Par défaut, C utilise le passage par valeur. Le code dans une fonction ne peut pas altérer les arguments d'appel (sauf si on passe explicitement des adresses/pointeurs).

Langue C

  1. Quatre modèles éprouvés pour les fonctions définies par l'utilisateur en C
  2. Comment passer des tableaux 1D et 2D aux fonctions en C – Guide pratique
  3. Maîtriser les fonctions de la bibliothèque standard C : Guide pratique
  4. Maîtriser les fonctions lambda Python : exemples pratiques et bonnes pratiques
  5. Maîtriser les Fonctions Verilog pour une Conception RTL Efficace
  6. Utilisation efficace de la mémoire avec les champs de bits en C
  7. Maîtriser les entrées/sorties fichiers en C : Création, ouverture et gestion
  8. Maîtriser les arguments variables en C : Guide pratique
  9. Comprendre le polymorphisme en C++ : Guide pratique