Kann mir jemand sagen, ob es eine besondere Anforderung für die Verwendung von entweder EXTERN
ou GLOBAL
Variablen in einem C-Programm? Ich sehe keinen Unterschied in einem Programm wie unten, wenn ich von gloabl zu extern wechsle.
#include <stdio.h>
#include <stdlib.h>
int myGlobalvar = 10;
int main(int argc, char *argv[])
{
int myFunc(int);
int i;
i = 12;
myGlobalvar = 100;
printf("Value of myGlobalvar is %d , i = %d\n", myGlobalvar, i);
i = myFunc(10);
printf("Value of passed value : %d\n",i);
printf("again Value of myGlobalvar is %d , i = %d\n", myGlobalvar, i);
system("PAUSE");
return 0;
}
int myFunc(int i)
{
i = 20 + 1000;
//extern int myGlobalvar;
myGlobalvar = 20000;
// printf("Value of passed value : %d",i);
return i;
}
Wenn unkommentiert extern int myGlobalvar
ändert sich der Wert nicht.
Gibt es irgendwelche correct
Unterschied zwischen beiden?
Kann mich bitte jemand korrigieren?