C++ main
-
seldon schrieb:
warum schreibst du nicht einfach
int main(int argc, char *argv)Ah, ok. Das schreibe ich ab jetzt immer so.
-
Äh, jaaaa...*hust* Da hab ich wohl ein [] vergessen.
-
Shlo schrieb:
int main(int argc, char** argv) { std::vector<std::string> args(argv, argv + argc); // ... }Fast. Es müsste +(argc+1) sein. Sonst fehlt da ein Parameter.
-
krümelkacker schrieb:
Fast. Es müsste +(argc+1) sein. Sonst fehlt da ein Parameter.
Nein, warum?
-
krümelkacker schrieb:
Fast. Es müsste +(argc+1) sein. Sonst fehlt da ein Parameter.
-
Shlo schrieb:
Man kann auch normal antworten.
-
krümelkacker schrieb:
Shlo schrieb:
int main(int argc, char** argv) { std::vector<std::string> args(argv, argv + argc); // ... }Fast. Es müsste +(argc+1) sein. Sonst fehlt da ein Parameter.
Im c ist die +1 enthalten

-
Zeus schrieb:
krümelkacker schrieb:
Shlo schrieb:
int main(int argc, char** argv) { std::vector<std::string> args(argv, argv + argc); // ... }Fast. Es müsste +(argc+1) sein. Sonst fehlt da ein Parameter.
Im c ist die +1 enthalten

Stimmt! Ich kann mir das nie merken, was der Wert von argc bedeutet.
@Shlo: Ja sicher. Da lag das Problem aber nicht. :p
-
krümelkacker schrieb:
Stimmt! Ich kann mir das nie merken, was der Wert von argc bedeutet.
@Shlo: Ja sicher. Da lag das Problem aber nicht. :p
Du kannst dir nicht merken, was der Wert von argc bedeutet? Really?

-
Shlo schrieb:
Du kannst dir nicht merken, was der Wert von argc bedeutet? Really?

Genau. Aber vielleicht bleibt's ja diesmal hängen. Wenn man argv[0] nicht als "Argument" mitzählt, kann das schonmal vorkommen. Und so abwägig ist das nicht; denn das erste "Programm-Argument" befindet sich ja in argv[1] (bei entsprechender Definition von "Argument"). Ein "Du hattest Recht, ich hatte Iteratoren nicht verstanden" kann ich Dir nicht anbieten, da es nicht der Wahrheit entspricht.
kk