Avant-propos de l'auteur
Page d'accueil personnelle :: petite page
page du gîte : David Qin
Une petite blogueuse qui aime partager Bienvenue à toutes les mignonnes pour apprendre
__________________________________________________________
Table des matières
1. Qu'est-ce qu'une fonction
2. Fonctions de la bibliothèque
3. Fonctions personnalisées
4. Paramètres de fonction
5. Appels de fonction
6. Appel imbriqué et accès chaîné des fonctions
7. Déclaration et définition de la fonction
8. Récursivité de fonction
_____________________________________________________
Connaissance interstitielle
1. Dans la norme c99, le concept de tableaux de longueur variable est ajouté. La taille du tableau peut être spécifiée par des variables, mais une fois que la taille du tableau est déterminée, elle ne peut pas être modifiée. Le tableau de longueur variable ne peut pas être initialisé. L'environnement VS ne prend pas en charge les tableaux de longueur variable.
2.define, #include, etc. ne sont pas des mots clés, mais des instructions de prétraitement
3. Un pointeur est une adresse, mais nous disons généralement que p est un pointeur et p est une variable de pointeur, donc notre pointeur familier fait référence à une variable de pointeur
4. La méthode de calcul de la valeur moyenne
Méthode 1 : (a+b)/2 (Il n'est pas recommandé d'écrire ceci)
Deuxième méthode :
Il suffit de diviser la partie supplémentaire en parts égales, et c'est tout.
a+(ba)/2
Qu'est-ce qu'une fonction ?
En ce qui concerne les mathématiques, les fonctions mathématiques sont similaires à f(x)=ax+b, et les fonctions du langage C sont similaires à ceci, sauf que
En langage C, non seulement ax + b mais aussi beaucoup de contenu sont combinés pour former un f(x), qui a généralement des paramètres d'entrée et des valeurs de retour, fournissant l'encapsulation du processus et le masquage des détails.
Classification des fonctions en langage C :
1. Fonctions de la bibliothèque
2. Fonctions personnalisées
Fonctions de la bibliothèque
En termes simples, les fonctions de bibliothèque sont des fonctions fournies par les fabricants de compilateurs en langage C. Le principe de l'utilisation de ces fonctions de bibliothèque est d'appeler le fichier d'en-tête
, le langage C n'est utilisé que pour spécifier comment cette fonction peut être utilisée et créée, comme suit :
La norme du langage C stipule :
1. La fonction de la fonction - telle que le calcul de la longueur des caractères
2. Nom de la fonction -------strlen
3. Paramètre --------strlen(const char* str)
4. Type de retour --------isize_t
En bref, les fonctions de la bibliothèque couramment utilisées en langage C ont :
Les petits intéressés peuvent venir ici pour jeter un coup d'œil https://cplusplus.com/reference/cctype/
fonction personnalisée
ret_type fun_name(para1, * )
{
statement;//语句项
}
ret_type 返回类型
fun_name 函数名
para1 函数参数
Ce qui précède est la composition de base de la fonction, qui est simplement le nom de la fonction paramètre type de retour du corps de la fonction
Par exemple, créez une définition de fonction qui trouve la valeur maximale de deux nombres
#include<stdio.h>
//int compare(int a, int b)
//{
// return (a > b ? a : b);
//}
int* compare(int* a, int* b)
{
return (*a > *b ? a : b);
}
int main()
{
int a = 1;
int b = 6;
compare(&a, &b);
printf("%d", *compare(&a, &b));
return 0;
}
Lorsque nous l'exécutons, nous pouvons voir que l'utilisation de la première fonction de définition ne modifie pas les valeurs de num1 et num2. C'est parce que le paramètre réel est passé au paramètre formel. Le paramètre formel est en fait une copie temporaire du paramètre réel. La modification du paramètre formel ne changera pas le paramètre réel.
La deuxième méthode est réalisée en manipulant l'adresse,
.paramètres de la fonction
paramètres réels (paramètres réels)
En termes simples, il s'agit du paramètre une fois la valeur transmise. Comme le montre la figure ci-dessus, &num1 est le paramètre réel (avec une valeur réelle), qui peut être compris comme le paramètre après l'appel de la fonction devient le paramètre réel
Les paramètres réels peuvent être : des constantes, des variables, des expressions, des fonctions, etc.
Paramètres formels (paramètres)
Le paramètre formel fait référence à la variable entre parenthèses après le nom de la fonction, car le paramètre formel n'est instancié que lorsque la fonction est appelée,
Appel de fonction :
#include<stdio.h>
#include<math.h>
int is_prime(int i)
{
int j = 0;
for (j = 2; j <= sqrt(i); j++)
{
if (i % j == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int i = 0;
for (i = 101; i <= 200; i += 2)
{
int a = is_prime(i);
if (a)
{
printf("%d ", i);
}
}
return 0;
}
Appels imbriqués et accès chaîné des fonctions
appels imbriqués
En termes simples, il y a des appels de fonction dans la fonction. Notez que la définition de la fonction ne peut pas être définie à l'intérieur de la fonction.
Résumer:
Les fonctions du langage C sont introduites ici en premier, et il y aura des suivis plus tard