Open ssommerr opened 2 months ago
El programa crea dos variables globales a y b. Pero la función local crea otra variable a, que es distinta a la global, por lo que la signación a=-5 no afecta a la variable global que se usa en main. En cambio sí afecta el cambio a la variable b, que es la misma que se usa en main, por eso imprime a vale: 2, b vale 4. Así estaría la memoria cuando se ejecuta la función local
Y así luego ejecutar las asignaciones en local
Ahh, okey! muchisimas gracias!!
Hola, como estan? Escribia para consultar por el primer ejercicio de la 5ta guia. int a,b; void local ( void );
int main ( void ) {
a = 2; b = 3;
local(); printf(" a vale : %d\t b vale %d\n", a, b ); return 0; }
void local ( void ) {
int a;
a = -5;
b = 4;
} Este es el ejercicio, y pregunta que devuelve. En este caso devuelve a=2 y b=4, en el caso que cambie el int de lugar devuelve a=-5 y b=3. No entiendo nada de lo que esta pasando, esto es debdio a que en el return no le metieron nada? O porque pasa esto? Y si cambio el int a,b de lugar porque altera el resultado?