Accueil Finances personnelles Des variables globales en programmation C - mannequins

Des variables globales en programmation C - mannequins

Table des matières:

Vidéo: Langage C Darija notions de base Variable ,Affichage,Lecture #Partie 01 2025

Vidéo: Langage C Darija notions de base Variable ,Affichage,Lecture #Partie 01 2025
Anonim

Parfois, en programmation C, une variable doit être comme un service de téléphonie cellulaire: disponible partout. La variable peut également être utilisée par n'importe quelle fonction à tout moment. Ce type de variable peut être appelé une variable universelle . Cela pourrait être appelé une variable dans le monde . Mais en C, on parle de variable globale .

Comment utiliser les variables globales

Les variables globales résolvent des problèmes spécifiques en rendant la déclaration de variable universelle. Ainsi, n'importe quelle fonction du programme peut accéder à la variable. Il ne doit pas être passé ou renvoyé d'une fonction.

Lancer votre âge indique comment une variable globale est déclarée et utilisée. Les variables globales age et float sont affectées par les deux fonctions. Ils peuvent être passés à ces fonctions, mais les deux valeurs ne peuvent pas être retournées. (Les fonctions C renvoient une seule valeur.) Par conséquent, la variable globale est utilisée comme solution.

AFFRONTEZ VOTRE ÂGE AUTOUR DE

#include la moitié du vide (vide); annuler deux fois (vide); int âge; pieds flottants; int main () {printf ("Quel âge avez-vous:"); scanf ("% d", & age); printf ("Quelle est votre taille (en pieds):"); scanf ("% f", & pieds); printf ("Vous avez% d ans et%.f pieds pieds n", âge, pieds); moitié(); deux fois(); printf ("Mais vous n'avez pas vraiment% d ans ou%.f pieds de haut.", âge, pieds); return (0);} void half (vide) {float a, h; a = (flottant) âge / 2. 0; printf ("La moitié de votre âge est%.f 1", a); h = pieds / 2. 0; printf ("La moitié de votre taille est%. 1f. n", h);} void deux fois (void) {age * = 2; printf ("Deux fois votre âge est% d. n", âge); pieds * = 2; printf ("Deux fois votre taille est% 1fn", pieds);}

Line 6 déclare la variable int globale age et la variable flottante feet . Ce sont des variables globales car elles sont déclarées en dehors de toute fonction, là-haut dans #include, #define et prototyping land. Les variables sont ensuite utilisées dans chaque fonction. Leurs valeurs peuvent être consultées dans tout le code. Même lorsque ces valeurs sont modifiées dans la fonction twice (), la fonction main () utilise les nouvelles valeurs.

Notez que deux instructions printf () dans la fonction main () enveloppent leur texte dans Tossing Your Age Around. Vous n'avez pas besoin d'envelopper ces instructions dans un éditeur de texte; Il suffit de les taper sur une seule ligne.

Exercice 1 : Tapez le code source de Tossing Your Age Around dans votre éditeur, en créant un nouveau programme. Construire et courir.

Ne soyez pas fainéant sur l'utilisation de variables globales! Si vous pouvez passer une valeur à une fonction, faites-le! C'est correct. Trop de programmeurs indolents déclarent toutes leurs variables globales pour "résoudre le problème."C'est bâclé et impropre.

De bons exemples de variables globales incluent des informations que toutes les fonctions du programme devraient connaître, telles que les informations de l'utilisateur ou si vous êtes en ligne ou si le texte est affiché ou masqué. Dans ce cas, envisagez de rendre ces variables globales à la place.

Comment créer une variable de structure globale

Un meilleur exemple d'utilisation d'une variable globale et d'une situation dans laquelle les variables globales sont absolument nécessaires est lors de la transmission d'une structure à une fonction. Dans ce cas, vous devez déclarer la structure comme globale afin que toutes les fonctions puissent accéder aux variables de ce type de structure.

Ne laissez pas la longueur massive du passage d'une structure à une fonction vous intimider! La plupart des "vrais" programmes que vous finirez par écrire seront beaucoup plus longs!

TRANSFERT D'UNE STRUCTURE A UNE FONCTION

#include #include #include #define TAILLE 5 struct bot {int xpos; int ypos;}; struct bot initialize (struct bot b); int main () {struct robot robots [TAILLE]; int x; srandom (temps non signé) (NULL)); Pour (x = 0; x 

Pour passer une structure à une fonction, la structure doit être déclarée globalement, ce qui arrive entre les lignes 7 et 10. Cela doit arriver avant même que la fonction soit prototypée, ce qui a lieu à la ligne 12.

La fonction initialize () s'exécute des lignes 30 à 41. La structure est passée à la fonction et renvoyée Notez que la variable de structure doit être entièrement définie comme l'argument Sur la ligne 30, la fonction reçoit le nom de la variable b dans la fonction

L'instruction return de la ligne 40 renvoie la structure à la fonction appelante, en effet, la fonction initialize () est définie comme une fonction de type bot de structure. Valeur

Exercice 2 : Visez votre courage à l'endroit où vous vous en tenez et tapez toutes les lignes du code source de Passer d'une structure à une fonction dans votre éditeur. La sortie montre comment le tableau de structure a été transmis (un élément à la fois) à une fonction, modifiée dans la fonction. tion, puis renvoyé.

Des variables globales en programmation C - mannequins

Le choix des éditeurs

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Pour les seniors: Comment travailler avec Windows dans Microsoft Windows - les nuls

Windows, avec un W majuscule, tire son nom de sa caractéristique principale: Windows, avec un w minuscule. Se familiariser avec Windows signifie apprendre à ouvrir, fermer, redimensionner, déplacer et basculer entre les fenêtres, ce qui est la clé pour jongler avec succès avec plusieurs activités. Chaque programme que vous exécutez occupe sa propre fenêtre. Une fenêtre peut occuper une partie de ...

Comment accepter ou rejeter les cookies dans Safari - dummies

Comment accepter ou rejeter les cookies dans Safari - dummies

Un cookie est un petit fichier qu'un site Web enregistre automatiquement sur le disque dur de votre Mac. Il contient des informations, telles que vos préférences ou votre date de naissance, que le site utilisera lors de vos prochaines visites. Dans Mac OS X Snow Leopard, Safari vous permet de choisir d'accepter ou non tous les cookies ...

Le choix des éditeurs

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Construire des boîtes et des lignes Bézier dans QuarkXPress - des nuls

Pour créer une boîte ou une ligne dans QuarkXPress plus complexe qu'un simple rectangle, ovale ou starburst, vous entrez dans le domaine du chemin de Bézier. Si vous avez utilisé l'outil Plume dans Adobe Illustrator ou Photoshop, vous comprenez déjà les chemins de Bézier. Il faut un peu de pratique et un esprit détendu ...

Création d'un rapport avec Crystal Reports 10 - témoins

Création d'un rapport avec Crystal Reports 10 - témoins

Lorsque vous démarrez Crystal Reports 10, généralement l'une des trois choses suivantes: créer un rapport, modifier un rapport ou exécuter un rapport sur les données de votre base de données. Les rapports prennent des données à partir d'une base de données, les traitent, les formatent et les affichent ensuite sur une imprimante, un écran d'ordinateur ou un site Web. Crystal Reports ...

Traitant des commentaires Javadoc dans Eclipse - mannequins

Traitant des commentaires Javadoc dans Eclipse - mannequins

Lorsque vous utilisez Eclipse pour écrire du code Java, n'oubliez pas de éditez les commentaires de Javadoc (les choses qui commencent par / **). Vous pouvez ajouter des informations utiles lorsque vous modifiez les commentaires Javadoc et lorsque vous les modifiez, l'aide au code d'Eclipse propose des suggestions. N'oubliez pas ces astuces lorsque vous modifiez vos commentaires Javadoc: Ajouter un commentaire Javadoc: ...

Le choix des éditeurs

Les connexions cachées sur le Nikon D5600 - les nuls

Les connexions cachées sur le Nikon D5600 - les nuls

Ouvrent les couvercles sur les côtés gauche et droit du Nikon D5600 caméra, et vous verrez plusieurs ports de connexions cachées. Les ports de connexion suivants sont indiqués sur cette image: Terminal d'accessoires: ce terminal accepte les accessoires suivants: câble déclencheur à distance Nikon MC-DC2; Télécommandes sans fil WR-1 et WR-R10; et les unités GPS GP-1 / GP-1A. I ...

Les connexions cachées sur votre Nikon D5200 - les nuls

Les connexions cachées sur votre Nikon D5200 - les nuls

ÉParpillés sur l'extérieur de votre appareil photo sont nombreuses commandes que vous utilisez pour changer d'image -prend des paramètres, revoir et modifier vos photos, et effectuer diverses autres opérations. Caché sous le couvercle sur le côté gauche de la caméra, vous trouverez les quatre ports de connexion suivants, étiquetés dans cette figure: Borne accessoire: Vous pouvez brancher le Nikon en option ...

Des boutons et autres commandes du Nikon D7500 - mannequins

Des boutons et autres commandes du Nikon D7500 - mannequins

C'est génial d'avoir une carte pour le boutons et commandes sur votre appareil photo, mais ce n'est pas beaucoup d'aide si vous ne pouvez pas vous rappeler quel bouton appuyer sur quand (et pourquoi). Alors, voici un aperçu des fonctions des contrôles les plus importants. (Certains contrôles ont des fonctions supplémentaires pendant certaines opérations, mais la table ...