Parameterübergabe an Programm
-
Abend,
ich suche eine ANSI-C Funktion die mir das übergeben von Parameter an ein Programm beim Start ermöglicht/vereinfacht.
z.b. nameProgramm -s /etc/usw -o 10 -p hallo
Es gibt hier so etwas (Buchstaben zu Wert zuordnen) , bin mir jedoch nicht ganz sicher ob dies Ansi-C ist, oder nur eine Linux Funktion.
Danke
worst_case
-
Hi,
du musst eben deine Parameter, die du dem Programm mitgibst, parsen und je nach
Option (z. B. -s) die von dir gewuenschten Funktionalitaet aufrufen.Deine Parameter, stehn in dem Array argv:
int main ( int argc, char *argv[] )
argc: Anzahl der uebergebenen Parameter
argv: hier stehen deine Parameter drinHoffe ich konnte dir ein wenig helfen
mfg
v R
-
Abend,
so wollte ich es ja nicht unbeding machen (so hab ich's bisher)
Denn dann ist ja das "-s" ein Parameter un der "WERT" dazu der nächste.Es gibt eine/mehrere Funktion(en) die mir das sortieren übernehmen und ausgeben welche Parameter überhaupt da sind.
worst_case
-
nein, aber das kannst du dir ja selber schreiben... schliesslich bekommt jedes programm andere parameter und hat auch ne andere aufruf syntax - wie sollte man da etwas allgemein gueltiges schreiben?
-
kleine Denkhilfe:
wenn "-s" in argv[i] steht, dann steht der dazugehoerige Parameter in argv[++i]
-
man getopt
kann dir einiges bei der Parameterauswertung erleichtern, ist aber systemabhängig...