====== setenv() ======
''unsetenv()'' ist in der ''[[c:lib:stdlib:start|stdlib]]'' definiert, die in C über ''stdlib.h'', bzw in C++ über ''cstdlib'' eingebunden wird.
===== Funktion =====
''unsetenv()'' löscht aus dem [[Enviroment]] eine Systemvariable und gibt den dafür benötigten Speicher frei.
===== Signatur =====
#include
int setenv( char const * name, char const * value, int override );
**name**: Name der zu löschenden Systemvariablen \\
\\
**Return Value**: 0 bei Erfolg, im Fehlerfall den Wert -1, wobei ein errno gesetzt wird:
^ errno ^ Bedeutung ^^
| EINVAL | Invalid Value: ''name'' ist NULL, zeigt auf einen leeren String oder enthält ein '='-Zeichen |
===== Fehlerquellen =====
-
===== Beispiel =====
#include
#include
int main (void)
{
char *user;
char const * varname = "USER";
user = getenv( varname );
printf( "Dieser Prozess wurde vom Benutzer '%s' gestartet.\n", user );
if( unsetenv( varname ))
printf( "Nicht überschreiben: Funktion meldet Fehler\n" );
user = getenv( varname );
if( user )
printf( "USER entspricht weiterhin '%s'.\n", user );
else
printf( "Variable USER existiert nicht.\n" );
return EXIT_SUCCESS;
}
**Ausgabe** \\
Dieser Prozess wurde vom Benutzer 'xin' gestartet.
Variable USER existiert nicht.
===== siehe auch =====
[[c:lib:stdlib:]]: [[clearenv()]], [[getenv()]], [[putenv()]], [[setenv()]], [[c:lib:stdlib:Enviroment]]