wo ist die definition von extern char **environ?
können wir die environment-variable in C so:
extern char **environ;
int main(int argc, char *argv[])
{
int count = 0;
printf("\n");
while(environ[count] != NULL)
{
printf("[%s] :: ", environ[count]);
count++;
}
return 0;
}
wo ist aber der Begriff der Umwelt? Ich kann nicht finden, dass in unistd.h. und wie funktioniert es?
Du musst angemeldet sein, um einen Kommentar abzugeben.
environ
ist definiert als eine Globale variable in der Glibc-source-Dateiposix/environ.c
.Haben Sie versucht, deklarieren envp als parameter an main?
http://www.gnu.org/software/libc/manual/html_node/Program-Arguments.html#Program-Arguments
Mann:
char **environ = NULL;
) in header-Dateien, weil die header-Dateien sind in mehrere übersetzungseinheiten -- der mehrere Definitionen clash. Sie können declare Variablen (extern char **environ;
) in header-Dateien, da mehrere Erklärungen sind okay.