Cómo conseguir que las variables estáticas en la programación c

En la programación C, variables utilizadas dentro de una función son local a esa función: Sus valores se utilizan y luego se descarta cuando la función se lleva a cabo. Do not Give Me No Estática demuestra el concepto.

No me des NO ESTÁTICA

#include void proc (void) -INT main () {puts ("First Call") - proc () - puts ("Segunda llamada") - proc () - retorno (0) -} void proc (void) {int a-printf ("El valor de la variable a es% d n", a) -printf ("Introduzca un nuevo valor:") -scanf ("% d", a) -}

En Do not Give Me No Estática, variable la en la función proc () no conserva su valor. La variable se inicializa sólo por la función scanf () en la línea 20. De lo contrario, la variable contiene información basura.

USANDO Typedef Para definir una estructura

typedef struct {char Identificación del primero [20] -char última [20] -} personal-typedef struct Fecha {int mes-día-int int año-} {humana cumpleaños Nombre-calendario personal -} calendario struct -

Ejercicio 1: Construir y ejecutar un nuevo proyecto con el código fuente de Uso typedef para definir una estructura.

que la producción se ve así:

Valor Primera callThe de la variable a es 0Enter un nuevo valor: valor 6Second callThe de la variable a es 0Enter un nuevo valor: 6

A pesar de todos los intentos de asignar 6 a la variable la, el programa siempre se olvida. Esto en cuanto a eso. ¿O es eso?

Ejercicio 2: Modificar el código fuente de Uso typedef para definir una estructura, la edición de la línea 16 para que diga:

static int a-

Genere y ejecute para probar la salida.

Valor Primera callThe de la variable a es 0Enter un nuevo valor: valor 6Second callThe de la variable a es 6Enter un nuevo valor: 5

Debido a que la variable se declara como estática, su valor se mantiene entre llamadas a funciones.

  • Usted no tiene necesidad de declarar como variables estáticas a menos que necesite sus valores retenidos cada vez que la función se llama, y ​​esta situación surge de vez en cuando. Pero antes de creer que sea una cura mágica, también considerar la creación de variables globales.

  • Variables de regresar de una función no necesitan ser declaradas estática. Cuando regresa una variable, como

    volver (a) -

    Sólo se devuelve el valor de la variable, no la propia variable.




» » » » Cómo conseguir que las variables estáticas en la programación c