Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » int main(int argc, char * argv[])

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
11.05.2004, 15:25 Uhr
~basti
Gast


hallo

ich möchte einige ausgaben nur machen nur wenn das programm mit "-v" aufgerufen wird. die main hab ich schon mit

int main(int argc, char * argv[])

deklariert. wie muss ich weiter machen, was muss ich noch tun, um die zeilen nur bei aufruf über -v auzugeben?!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.05.2004, 15:44 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


wenn du einfach mal folgendes schreibst siehst du wie das mit den beiden Varaiblen funktioniert.

C++:
int main(int argc, char * argv[])
{
  for (int i=0; i<argc; i++)
    printf ("%i. Argument: %s\n",i+1,argv[i]);
  return 0;
}



Kannst das ja mal erstellen und mit verschiedenen Parametern aufrufen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
11.05.2004, 15:45 Uhr
Pablo
Supertux
(Operator)


Du musst die Argumente parsen.

in argc wird gespeichert, wie viele Argumente übergegeb wurden (argc ist mind. 1, denn die Zeichenkette des Aufrufs des Programmes wird immer mitangegeben). argv[0] ist immer der Aufruf des Programmes.

Wenn argc 4 ist, dann weisst du, dass 3 Argumente übergeben worden sind, die findest du unter argv[1], argv[2], argv[3]

bsp:

C++:
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
    if (argc!=2) {
        fprintf(stderr, "Übergeben Sie nur ein Argument, bitte!\n";
        return 1;
    }
    if (strcmp(argv[1], "-v")) {
        fprintf(stderr, "Das Argument muss -v sein.!\n";
        return 1;
    }
    printf("Prima! Sie haben %s als Argument !!!\n",argv[1]);
    return 0;
}


--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: