All pastes #753629 Raw Edit

Unnamed

public text v1 · immutable
#753629 ·published 2007-10-29 12:06 UTC
rendered paste body
programa.c

#include <stdio.h>

int main(int argc, char **argv) {
	extern int variableCompartida;
	printf("MAIN VALOR = %d  DIRECCION = %p\n", variableCompartida, &variableCompartida);
	printf("LE ASIGNO 333 EN MAIN\n");	
	variableCompartida = 333;
	printf("MAIN VALOR = %d  DIRECCION = %p\n", variableCompartida, &variableCompartida);
	printf("AHORA LLAMO A LA FUNCION\n");
	funcionCompartida(1);
	printf("VALOR = %d  DIRECCION = %p\n", variableCompartida, &variableCompartida);
}

biblioteca.c

#include <stdio.h>

int variableCompartida;

void funcionCompartida(int a) {
 printf("BIBLIOTECA VALOR = %d  DIRECCION = %p\n", variableCompartida);
 printf("BIBLIOTECA le asigno 999\n");
 variableCompartida=999;
}

SALIDA:

tmp$ ./ptest
MAIN VALOR = 0  DIRECCION = 0x80497fc
LE ASIGNO 333 EN MAIN
MAIN VALOR = 333  DIRECCION = 0x80497fc
AHORA LLAMO A LA FUNCION
BIBLIOTECA VALOR = 333  DIRECCION = 0xb7f410d0
BIBLIOTECA le asigno 999
VALOR = 999  DIRECCION = 0x80497fc