#1 16. Januar 2011 Kommandozeilenparameter VS2008 Guten Abend, ich habe ein kleines Problem mit einem Programm ... Ich bin grad dabei mich in C weiterzubilden und Versuche jetzt mit den Argumenten der main Funktion zu arbeiten. ich habe mir ein kleines Programm geschrieben in VS2008 in C: Code: int i; for(i =0; i < argc; i++) printf("Parameter %d : %s \n " ,i , argv[i]); return 0; Dann hab ich noch eine Batch Datei: Code: @echo off name.exe argument hallo welt if %errorlevel%==0 echo Kein Fehler echo %errorlevel% PAUSE An sich fnktioniert es schon nur kommt nicht das, was ich erwarte... Theorethisch müsste in meiner Eingabeaufforderung nun Code: Parameter 0: name Parameter 1: argument Parameter 2: hallo Parameter 3: welt Kein Fehler 0 Stehen aber es kommt: Code: Parameter 0: n Parameter 1: a Parameter 2: h Parameter 3: w Kein Fehler 0 Kann mir bitte jemand helfen? Ich habe nun knapp 3 Stunden gegoogelt, Bücher gelesen und und und aber finde nichts ... vielleicht bin ich einfach nur blind/doof Vielen Dank! + Multi-Zitat Zitieren
#2 16. Januar 2011 AW: Kommandozeilenparameter VS2008 Code: int main(int argc, const char **argv) { int i; for(i =0; i < argc; i++) printf("Parameter %d : %s \n",i , argv[i]); return 0; } + Multi-Zitat Zitieren
#3 16. Januar 2011 AW: Kommandozeilenparameter VS2008 Ok Vielen Dank es funktioniert Könntest du mir evtl. noch sagen warum? Ich tippe zwar auf den Double-Pointer da sonst nicht viel geändert wurde aber wieso das nun so ist ...! Danke! + Multi-Zitat Zitieren
#4 16. Januar 2011 AW: Kommandozeilenparameter VS2008 dann stand bei dir zuvor: Code: int main(int argc, const char *argv) da hast du deinen fehler, denn dann zeigt argv auf eine zeichenkette und nicht auf einen array aus zeichenketten + Multi-Zitat Zitieren