fonctions en C (et en plus de tout autre langage de programmation ) font partie intégrante de développer et de maintenir une sorte de code de projet complexe. Nom Fonctions des blocs de code qui effectuent une certaine tâche , qui peut être appelé et utilisé en référençant le nom de la fonction . Dans la programmation C , les fonctions peuvent exécuter soit traditionnellement ou fonctions inline , selon la façon dont le programmeur définit la fonction . Pour comprendre les fonctions inline statiques , le programmeur doit comprendre comment les fonctions inline comparer à des fonctions régulières . Définitions des fonctions
Quand un programmeur définit une fonction , elle le fait de définir un bloc de code en un seul endroit . Souvent, le code de la fonction est utilisé à plusieurs reprises , ou effectue une tâche complexe que le programmeur peut vouloir modifier ou changer à l'avenir. Le programmeur peut ensuite référencer cette fonction tout au long du programme en utilisant son nom . Cela permet la réutilisation de code dans le même programme ou à travers de multiples programmes. L'exemple suivant montre une fonction de base
int myFunc () {
retour 2 +3 ;
} .
fonctions Inline
Lorsque les fonctions sont appelées dans tous les programmes , cependant, un code spécial doit être rédigé par le compilateur de référencer la fonction. C'est parce que le code de la fonction réside dans la mémoire à un endroit spécifique , distinct de tout autre code d'exécution. Fondamentalement , cela signifie que le code d'exécution doit se déplacer vers un autre emplacement mémoire , exécutez le code de la fonction , puis revenir au code original . Pour optimiser la vitesse , C comprend le mot-clé "inline" , qui indique au compilateur pour copier le code de la fonction dans le code exécuté lorsque le nom de la fonction est appelée, plutôt que d' obtenir le code de la fonction de la mémoire.
< Br > Photos Inline fonctions statiques
Une fonction "statique" indique au compilateur que d'autres fichiers de programme ne peuvent pas voir ou accéder à la fonction . Seuls les autres fonctions du même fichier peut voir une fonction statique . Par conséquent, pour déclarer une fonction locale uniquement dans le fichier le programmeur définit en , et optimisé pour la vitesse en existant comme une fonction inline , un programmeur d'utiliser les mots clés " statiques " et "inline" pour définir les fonctions , comme dans cet exemple .
statique myFunc de vide en ligne ( ) {
/* Code * /
exemples
Utilisation des fonctions inline statiques permet multiple fichiers C pour utiliser les mêmes noms de fonction dans plusieurs fichiers. Par exemple, considérons ces deux exemples de fonctions. La première fonction existe dans " one.h " et le second en " two.h. " Parce que les fonctions sont statiques, elles n'entrent pas en conflit lorsque la fonction est appelée dans un fichier ou d'une autre . En outre , le compilateur de placer le code pour chaque fonction directement dans le code d'exécution , plutôt que de référencer une fonction de mémoire .
//À partir de one.h
statique inline void myFunc () {
/* Code * /}
//à partir de two.h
statique inline void myFunc () {
/* Code * /}