wie ein string-Problem
-
Hallo Kollegen!
Finde leider meinen Fehler nicht im Code.
Habe schon herumgegoogelt, aber leider konnte ich meinen Fehler trotzdem nicht beheben.
Vielleich kann mir ja einer von Euch helfen, bitte.if(argc > 1) { char const *argument = argv[1]; printf("argument: %s\n",argument); char const *pos = strchr(argument, '-'); printf("debug\tpos: %s\n",pos); if(pos); { verboseflag = inputHandler(argc, argv); }
Also der Code sollte - erkennen. Sobald er weiß das ein Minus da ist, sollte er
in den inputHandler gehen.
Sonst darf er dort aber nicht hin. Da es sich nicht um einen gewünschten Parameter (gewünschte Form -x oder --x) handelt.LG
Luis
-
Bei
if(pos);
ist das Semikolon zu viel. Übrigens erzeugt das printf undefiniertes Verhalten, wenn der Parameter keinen Bindestrich enthält, und womöglich solltest du das Orakel mal nach getopt befragen.
-
Du solltest bei printf das %s mal durch %p ersetzen, damit es bei bei NULL nicht knallt.
-
seldon schrieb:
Bei
if(pos);
ist das Semikolon zu viel. Übrigens erzeugt das printf undefiniertes Verhalten, wenn der Parameter keinen Bindestrich enthält, und womöglich solltest du das Orakel mal nach getopt befragen.
Hi,
danke für die rasche Hilfe.Das Semikolon habe ich heute nicht mehr gesehen
(zulange schon vorm PC).
Die printf`s kommen eh heraus, waren nur zum debuggen.Danke
Luis
PS:So rasche Hilfe am Fr-Abend
-
Stimmt, getopt() hört sich gut an.
Kannte die Funktion vorher gar nicht.
Super Tipp.
Danke