Latest web development tutorials

fonction C

Est un ensemble de fonctions pour effectuer un énoncé de mission ensemble. Chaque programme C a au moins une fonction, qui est la principale fonctionmain (), tout programme simple peut définir d' autres fonctions supplémentaires.

Vous pouvez mettre le code dans des fonctions différentes. Comment diviser le code en fonctions distinctes est à vous de décider, mais logiquement divisé habituellement effectuer chaque fonction basée sur une tâche spécifique à réaliser.

Déclaration de fonction indique le nom de la fonction de compilation, type de retour et paramètre.Définition de la fonction fournit le corps même de la fonction.

C bibliothèque standard fournit un grand nombre de fonctions intégrées du programme peuvent appeler. Par exemple, la fonctionstrcat () est utilisée pour relier deux chaînes, la fonction memcpy ()pour copier la mémoire à un autre emplacement.

Il y a beaucoup de fonction est appelée, comme des méthodes, des procédures ou des sous-programmes, et ainsi de suite.

Fonctions définies

La forme générale de la fonction du langage C est défini comme suit:

return_type function_name( parameter list )
{
   body of the function
}

En C, une fonction de l'en-tête de la fonction et un des composants du corps de la fonction. Ci-dessous font tous partie d'une fonction:

  • Type de retour:Une fonction peut retourner une valeur.return_type est le type de la valeur retournée par la fonction de données.Certaines fonctions effectuent l'opération souhaitée sans la valeur de retour, dans ce cas, return_typevide mot - clé.
  • Nom de la fonction:Ceci est le nom réel de la fonction. Nom de la fonction et de la liste des paramètres, ensemble, constituent la signature de fonction.
  • Paramètres: Paramètre est comme un espace réservé.Lorsque la fonction est appelée, vous passez une valeur au paramètre, cette valeur est appelée les paramètres réels. Liste des paramètres comprennent le type de paramètres de la fonction, la quantité de commande. Paramètre est facultatif, à savoir, la fonction ne peut pas contenir des paramètres.
  • Fonction principale: corps de la fonction contient un ensemble de fonctions définies énoncé de mission.

Exemples

Les éléments suivants sont la fonctionmax () dans le code source.Cette fonction prend deux paramètres num1 et num2, qui sera de retour le plus grand des deux nombres compter:

/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2) 
{
   /* 局部变量声明 */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

Déclaration de fonction

Déclaration de fonction indique le nom de la fonction du compilateur, et comment appeler la fonction.Le corps réel de la fonction peut être définie individuellement.

Déclaration de fonction comprend les sections suivantes:

return_type function_name( parameter list );

Défini ci-dessus pour la fonction max (), ce qui suit est une déclaration de fonction:

int max(int num1, int num2);

Dans la déclaration de fonction, le nom du paramètre n'a pas d'importance, seul le paramètre de type est nécessaire, de sorte que ce qui suit est une déclaration valide:

int max(int, int);

Lorsque vous définissez une fonction dans un fichier source et appelez une fonction dans un autre fichier, la déclaration de fonction est nécessaire. Dans ce cas, vous devez appeler le haut de la fonction fichier de déclaration de fonction.

fonctions d'appel

Lors de la création d'une fonction C, définir quelles fonctions faire, puis de terminer la tâche en appelant la fonction a été définie.

Lorsqu'un programme appelle une fonction, le contrôle du programme sera transféré à la fonction appelée. Lorsque la fonction exécute les tâches définies qui sont appelées lorsque l'instruction de retour de la fonction est exécutée, ou accéder à la fonction de support d'extrémité, le programme sera de retour le contrôle au programme principal.

Lorsque vous appelez la fonction, en passant les paramètres requis, si la fonction retourne une valeur, vous pouvez stocker la valeur de retour. Par exemple:

#include <stdio.h>
 
/* 函数声明 */
int max(int num1, int num2);
 
int main ()
{
   /* 局部变量定义 */
   int a = 100;
   int b = 200;
   int ret;
 
   /* 调用函数来获取最大值 */
   ret = max(a, b);
 
   printf( "Max value is : %d\n", ret );
 
   return 0;
}
 
/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2) 
{
   /* 局部变量声明 */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

La fonction max () et la fonction main () est mis un morceau, compiler le code source. Lorsque vous exécutez le fichier exécutable final va produire les résultats suivants:

Max value is : 200

Arguments de la fonction

Si vous souhaitez utiliser le paramètre de fonction, vous devez déclarer une variable d'accepter les valeurs des paramètres. Ces variables sont connues en tant queparamètres formels de la fonction.

Comme les autres formes de paramètres variables locales au sein de la fonction est créée lors de l'entrée de la fonction, quittez la fonction est détruite.

Lorsque la fonction est appelée, il y a deux façons de passer des paramètres à une fonction:

调用类型描述
传值调用 该方法把参数的实际值复制给函数的形式参数。在这种情况下,修改函数内的形式参数不会影响实际参数。
引用调用 该方法把参数的地址复制给形式参数。在函数内,该地址用于访问调用中要用到的实际参数。这意味着,修改形式参数会影响实际参数。

Par défaut, C en utilisant l'appel par de passer des paramètres.En général, cela signifie que le code dans la fonction ne peut pas changer les paramètres réels utilisés pour appeler la fonction.