001
24.01.2006, 23:21 Uhr
Hans
Library Walker (Operator)
|
Hi,
das ist ja eine sehr schöne und ausführliche Erklärung, Nur leider nutzt sie mir unter Win95 nichts, weil die Einsichten in die Systemeigenschaften dort nicht so ausführlich sind. Aber als (potentielle) Softwareentwickler können wir die Umgebungsvariablen ja auch mit einem Programm abfragen:
C++: |
/* Programm MAINARGS.C Beispiel aus der Borlandhilfe */
#include <stdio.h> #include <stdlib.h>
int main(int argc, char *argv[], char *env[]) { int i;
printf("Der Wert von argc ist %d \n", argc); printf("Dies sind die %d Kommandozeilen-Parameter, übergeben an" " main:\n\n", argc);
for (i = 0; i < argc; i++) printf(" argv[%d]: %s\n", i, argv[i]);
printf("\nDie Umgebungsvariable(n) auf diesem System sind:\n\n");
for (i = 0; env[i] != NULL; i++) printf(" env[%d]: %s\n", i, env[i]);
return 0; }
|
Damit erhalte ich z.B. die folgende Ausgabe:
Code: |
D:\Borland\work>mainargs Der Wert von argc ist 1 Dies sind die 1 Kommandozeilen-Parameter, ³bergeben an main:
argv[0]: D:\BORLAND\WORK\MAINARGS.EXE
Die Umgebungsvariable(n) auf diesem System sind:
env[0]: =C:=C:\WINDOWS env[1]: =D:=D:\Borland\work env[2]: TMP=C:\WINDOWS\TEMP env[3]: PROMPT=$p$g env[4]: winbootdir=C:\WINDOWS env[5]: COMSPEC=C:\WINDOWS\COMMAND.COM env[6]: PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\DOS;C:\WINDOWS;C:\WINDOWS\COMMAND;D:\BORLAND\BIN env[7]: TEMP=C:\DOS env[8]: windir=C:\WINDOWS env[9]: CMDLINE=mainargs
|
Der vollständigkeit halber muss noch gesagt werden, das nicht jeder Compiler 3 Argumente von main unterstützt. Aber wenn das der Fall ist, dann gibt es mit Sicherheit andere Möglichkeiten, um auf die Umgebungsvariablen zu zugreifen. Da ich einen solchen Compiler nicht habe, kann ich dazu auch kein Beipiel liefern. Das kann aber bestimmt jemand hinzu fügen, der/die mit einem solchen Compiler arbeitet.
Hans -- Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung. Dieser Post wurde am 24.01.2006 um 23:28 Uhr von Hans editiert. |