Problem mit Argumenten
-
Hallo,
Ich will, dass wenn das Argument "argument1" übergeben wird, "Yippi" ausgegeben wird. Es kommt aber gar nix.
#include <iostream> int main(int argc, char** argv) { for(int i=0; i<argc; ++i) { if(argv[i] == "argument1") { std::cout << "Yippi!" << std::endl; break; } } return 0; }pf1.
-
Ich würde dir empfehlen.Die werte in deinem argv in einen
std::stringumzuwandeln und den mit == zu vergleichen.
-
pf1 schrieb:
if(argv[i] == "argument1")
das problem ist, dass hier nur die adressen der zeichenketten verglichen werden
-
Entweder die C-Funktion
strcmp()einsetzen, oder - was ich für die bessere Möglichkeit halte - wie von Firefighter gesagtstd::stringmitoperator==zu vergleichen.
-
Danke. Mit std::string funktionierts wunderbar.
pf1