Une fonction est un groupe de déclarations utilisées pour effectuer une tâche spécifique. En programmation C, l'exécution commence à partir de main (). C'est une fonction. Plutôt que d'écrire toutes les déclarations dans le même programme, il peut être divisé en plusieurs fonctions. Chaque fonction remplira différentes fonctionnalités. Le prototype de fonction informe le compilateur du nom de la fonction, des types de retour et des paramètres. Il est également connu comme une déclaration de fonction. Chaque fonction a un nom particulier pour l'identifier. Les instructions de fonction sont écrites à l'intérieur d'une paire de bretelles bouclées. Les fonctions peuvent renvoyer une valeur. Il existe certaines fonctions qui ne renvoient pas de valeur. Les données sont transmises à la fonction à l'aide de la liste des paramètres. La définition de la fonction a la fonctionnalité réelle effectuée par la fonction. En programmation C, il existe un prototype de fonction et une définition de fonction. Le différence clé entre le prototype de fonction et la définition de la fonction est que le Le prototype de fonction ne contient que la déclaration de la fonction tandis que la définition de la fonction contient l'implémentation réelle de la fonction. La définition de la fonction a les variables locales et les instructions qui déterminent ce que fait la fonction.
1. Aperçu et différence clé
2. Qu'est-ce que le prototype de fonction en C
3. Quelle est la définition de la fonction en C
4. Similitudes entre le prototype de fonction et la définition de la fonction en C
5. Comparaison côte à côte - Fonction Prototype VS Définition de la fonction dans C sous forme tabulaire
6. Résumé
Le prototype de fonction fournit la déclaration de fonction. Il spécifie le nom de la fonction, les types de retour, les paramètres. Les types de retour sont le type de données qui revient de la fonction. Lorsqu'une fonction renvoie un entier, alors le type de retour est int. Lorsqu'une fonction renvoie une valeur flottante, alors le type de retour est un flotteur. Si la fonction ne renvoie aucune valeur, c'est une fonction vide. Le nom de la fonction est utilisé pour l'identifier. C Les mots clés ne peuvent pas être utilisés comme noms de fonction. Les données sont transmises à la fonction à l'aide des paramètres. Le prototype de fonction ne contient pas l'implémentation réelle de la fonction. Le prototype de fonction a la syntaxe suivante.
(Liste des paramètres);
S'il existe une fonction pour calculer le maximum de deux nombres, la déclaration peut être écrite comme int max (int num1, int num2); La valeur maximale doit être trouvée dans num1 et num2. Ce sont des entiers, et ils sont transmis à la fonction. Le type de retour, au début, est également int. Ainsi, la fonction renvoie une valeur entière. Il n'est pas nécessaire d'écrire les noms de paramètres dans le prototype de fonction. Mais il est nécessaire d'écrire les types de données. Par conséquent, int max (int, int); est également un prototype de fonction valide. S'il y a deux entiers sous le nom de Num1, num2, num3 et que le prototype est écrit comme int max (int num1, int num2, num3); c'est invalide. Les num1, num2 ont les types de données, mais Num3 n'a pas de type de données. Par conséquent, c'est invalide.
Référer le programme ci-dessous.
#inclure
int carmax (int x, int y);
int main()
int p = 10;
int q = 20;
INT RÉPONSE;
réponse = calmax (p, q);
printf («La valeur maximale est% d \ n», réponse);
retour 0;
int calmax (int p, int q)
INT VALEUR;
if (p> q)
valeur = p;
autre
valeur = q;
valeur de retour;
Selon ce qui précède, la deuxième instruction montre le prototype de fonction. Il n'a pas l'implémentation. La mise en œuvre réelle est après le programme principal. Les prototypes de fonction sont plus utiles pour définir une fonction dans un fichier source et appeler cette fonction dans un autre dans un autre fichier.
La définition de la fonction a l'implémentation réelle de la fonction. Il contient ce que la fonction doit faire. Lorsque le programme appelle la fonction, le contrôle est transféré à la fonction appelée. Après l'exécution de la fonction, le contrôle revient à la fonction principale. Les données requises sont transmises à la fonction comme une liste de paramètres. S'il y a une valeur renvoyée, le type de retour est mentionné. S'il n'y a pas de valeurs de retour, le type de retour est vide. Reportez-vous à la fonction ci-dessous pour calculer la zone d'un triangle.
#inclure
float Calarea (int x, int y);
int main ()
int p = 10;
int q = 20;
zone de Flaot;
zone = calarea (p, q);
printf («La valeur maximale est% f \ n», zone);
retour 0;
float calarea (int x, int y)
Valeur flottante;
valeur = 0.5 * x * y;
valeur de retour;
Selon le programme ci-dessus, la deuxième instruction indique le prototype de fonction. L'implémentation réelle de ce que la fonction exécute est écrite après le programme principal. C'est la définition de la fonction. Les valeurs P et Q sont transmises à la fonction Calarea. La valeur variable est une variable locale à la fonction Calarea. La zone est calculée et affectée à la valeur variable. Ensuite, il est retourné au programme principal.
Fonction Prototype vs Définition de fonction en C | |
Le prototype de fonction spécifie le nom de la fonction, le type de retour, les paramètres mais omet le corps de la fonction. | La définition de la fonction spécifie le nom de la fonction, Type de retour; Les paramètres incluent un corps de fonction. |
Mise en œuvre | |
Le prototype de fonction n'a pas la mise en œuvre de la fonction. | La définition de la fonction a l'implémentation de la fonction. |
L'utilisation de fonctions dans les programmes présente des avantages. Les fonctions augmentent la réutilisabilité du code. Il n'est pas nécessaire d'écrire le même code encore et encore. Au lieu de cela, le programmeur peut diviser le programme et appeler la fonction nécessaire. En c il y a des fonctions de bibliothèque. Ces fonctions sont déclarées dans les fichiers d'en-tête C. Certains d'entre eux sont printf (), scanf () etc. Le programmeur peut également écrire ses propres fonctions. Il y a deux termes qui sont associés aux fonctions en C. Ils fonctionnent prototype et définition de la fonction. La différence entre le prototype de fonction et la définition de la fonction en C est que le prototype de fonction ne contient que la déclaration de la fonction tandis que la définition de la fonction contient l'implémentation réelle de la fonction.
Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne selon la note de citation. Veuillez télécharger la version PDF ici: différence entre le prototype de fonction et la définition de la fonction en C
1.Définitions de la fonction C. Disponible ici
2.tutorielpoint.com. "C fonctions." Le point. Disponible ici
1.'Le langage de programmation C Logo'by Rezonansowy (Domaine public) via Commons Wikimedia