Maison  >  Article  >  développement back-end  >  fonction personnalisée en langage C

fonction personnalisée en langage C

王林
王林original
2020-05-12 13:15:405972parcourir

fonction personnalisée en langage C

Définition de la fonction sans paramètre en langage C

Si la fonction ne reçoit pas de données transmises par l'utilisateur, elle peut être définie sans paramètres. Comme indiqué ci-dessous :

dataType  functionName(){
    //body
}

dataType est le type de valeur de retour, qui peut être n'importe quel type de données en langage C, tel que int, float, char, etc.

functionName est le nom de la fonction, qui est un type d'identifiant. Les règles de dénomination sont les mêmes que celles des identifiants. Les parenthèses ( ) après le nom de la fonction ne peuvent pas manquer.

body est le corps de la fonction, qui est le code que la fonction doit exécuter et constitue la partie principale de la fonction. Même s'il n'y a qu'une seule instruction, le corps de la fonction doit être entouré de { }.

S'il existe une valeur de retour, utilisez l'instruction return dans le corps de la fonction pour la renvoyer. Le type de données renvoyées doit être le même que dataType.

Par exemple, définissez une fonction pour calculer le résultat de l'ajout de 1 à 100 :

#include <stdio.h>

int sum(){
    int i, sum=0;
    for(i=1; i<=100; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int a = sum();
    printf("The sum is %d\n", a);
    return 0;
}

Résultat d'exécution :

The sum is 5050

Les fonctions ne peuvent pas être imbriquées, et principales est également une définition de fonction, donc sum doit être placé en dehors de main. Les fonctions doivent d'abord être définies puis utilisées, donc sum doit être placé avant main.

Remarque : main est une définition de fonction, pas un appel de fonction. Lorsque le fichier exécutable est chargé dans la mémoire, le système démarre l'exécution à partir de la fonction principale, c'est-à-dire que le système appellera la fonction principale que nous avons définie.

Fonction sans valeur de retour

Certaines fonctions n'ont pas besoin de renvoyer une valeur, ou le type de valeur de retour est incertain (rare), alors vous pouvez Exprimé par void, par exemple :

void hello(){
    printf ("Hello,world \n");
    //没有返回值就不需要 return 语句
}

void est un mot-clé en langage C, qui signifie « type vide » ou « aucun type ». Dans la plupart des cas, cela signifie qu'il n'y a pas d'instruction return.

Définition de la fonction paramétrée en langage C

Si la fonction a besoin de recevoir des données transmises par l'utilisateur, alors elle doit apporter des paramètres lors de sa définition. Comme indiqué ci-dessous :

dataType  functionName( dataType1 param1, dataType2 param2 ... ){
    //body
}

dataType1 param1, dataType2 param2 ... est la liste des paramètres. Une fonction ne peut avoir qu'un seul paramètre ou plusieurs paramètres, séparés par . Les paramètres sont essentiellement des variables, et le type et le nom doivent être spécifiés lors de la définition. Par rapport à la définition d'une fonction sans paramètre, la définition d'une fonction paramétrée n'a qu'une seule liste de paramètres supplémentaire.

Les données sont transmises à l'intérieur de la fonction via des paramètres pour le traitement. Une fois le traitement terminé, la valeur de retour est notifiée à l'extérieur de la fonction.

Calculer le résultat de l'ajout de m à n :

#include <stdio.h>

int sum(int m, int n){
    int i, sum=0;
    for(i=m; i<=n; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int begin = 5, end = 86;
    int result = sum(begin, end);
    printf("The sum from %d to %d is %d\n", begin, end, result);
    return 0;
}

Exécuter le résultat :

The sum from 5 to 86 is 3731

Lorsque sum() est défini, les valeurs des paramètres m et n sont inconnus ; lors de l'appel de sum(), passez les valeurs de début et de fin respectivement à m et n. C'est le même processus que l'attribution de valeurs aux variables. C'est équivalent à :

m = begin;
n = end;

. Tutoriel recommandé : tutoriel langage c

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn