C Program to print environment variables
The C standard says following about main function in C.
The function called at program startup is named main. The implementation declares no prototype for this function. It shall be defined with a return type of int and with no parameters: int main(void) { /* ... */ } or with two parameters (referred to here as argc and argv, though any names may be used, as they are local to the function in which they are declared): int main(int argc, char *argv[]) { /* ... */ } or equivalent;10) or in some other implementation-defined manner.
But most of the compilers also support a third declaration of main that accepts third argument. The third argument stores all environment variables.
C
#include <stdio.h> // Most of the C compilers support a third parameter to main which // store all environment variables int main( int argc, char *argv[], char * envp[]) { int i; for (i = 0; envp[i] != NULL; i++) printf ("\n%s", envp[i]); getchar (); return 0; } |
Output:
ALLUSERSPROFILE=C:\ProgramData CommonProgramFiles=C:\Program Files\Common Files HOMEDRIVE=C: NUMBER_OF_PROCESSORS=2 OS=Windows_NT PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC PROCESSOR_ARCHITECTURE=x86 PROCESSOR_IDENTIFIER=x86 Family 6 Model 42 Stepping 7, GenuineIntel PROCESSOR_LEVEL=6 PROCESSOR_REVISION=2a07 ProgramData=C:\ProgramData ProgramFiles=C:\Program Files PUBLIC=C:\Users\Public SESSIONNAME=Console SystemDrive=C: SystemRoot=C:\Windows WATCOM=C:\watcom windir=C:\Windows
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
Please Login to comment...