Comment faire variables statiques dans la programmation de c

Dans la programmation C, les variables utilisées dans une fonction sont local à cette fonction: Leurs valeurs sont utilisés puis jetés lorsque la fonction est effectuée. Do not Give Me No Parasites démontre le concept.

NE DONNEZ PAS ME STATIC

#include vide proc (void) main () {-int puts ("First Call") - proc () - puts ("Deuxième appel") - proc () - retour (0) -} proc (void) {int un printf ("La valeur de la variable est un% d n", a) -printf ("Entrez une nouvelle valeur:") -scanf ("% d", a) -}

Dans Do not Give Me No Parasites, variable un dans la fonction proc () ne conserve pas sa valeur. La variable est initialisée uniquement par la fonction scanf () à la ligne 20. Sinon, la variable contient des informations de la malbouffe.

UTILISATION Typedef Pour définir une structure

typedef struct {char id première [20] -char dernière [20] -} personnelle-typedef struct {int jour-mois-jour int int d'année civile}-struct {humaine individuelle Nom-calendrier anniversaire -} -



Exercice 1: Construire et gérer un nouveau projet en utilisant le code source de l'aide typedef pour définir une structure.

il sortie ressemble à ceci:

Première valeur de la variable a callThe est 0Enter une nouvelle valeur: la valeur de la variable 6Second callThe un 0Enter est une nouvelle valeur: 6

Malgré toutes les tentatives pour attribuer 6 à la variable un, le programme oublie toujours. Voilà pour cela. Ou est-ce?

Exercice 2: Modifier le code source de l'aide typedef pour définir une structure, l'édition Ligne 16 comme suit:

static int a-

Construire et exécuter pour tester la sortie.

Première valeur de la variable a callThe est 0Enter une nouvelle valeur: la valeur de la variable 6Second callThe un 6Entrez est une nouvelle valeur: 5

Parce que la variable a été déclarée comme statique, sa valeur est retenue entre les appels de fonction.

  • Vous avez pas besoin de déclarer des variables comme statique, sauf si vous avez besoin de leurs valeurs conservées chaque fois que la fonction est appelée, et cette situation surgit de temps à autre. Mais avant de croire qu'il soit un remède magique, envisager également de créer des variables globales.

  • Les variables retournées d'une fonction ne doivent pas être déclarés statique. Lorsque vous revenez d'une variable, comme

    retourner (a) -

    seulement la valeur de la variable est retournée, pas la variable elle-même.


» » » » Comment faire variables statiques dans la programmation de c