C: Zwei Arrays - eine Speicheradresse???
-
Irgendwie ist mir immer noch nicht klar was das werden soll. Erkläre doch einmal kurz was genau du erreichen willst bzw. was dein Programm macht, ich denke dann können wir dir sehr viel besser helfen.
-
DirkB schrieb:
Das darfst du auch nicht machen, denn du weißt ja nicht, wie viel Platz in
argv[i
] ist.das war bloß ein beispiel, ich reserviere da schon genug speicherplatz
-
ich brauch ein paar ausführungen davon. denn beim
file = fopen(strcat(argv[i], ".txt"), "w+")
schreib strcat alles in argv rein. so kann ich argv[i] nicht mehr gescheit verwenden
Dann mach doch sowas hier:
char filename[BIG_ENOUGH]; snprintf(filename, BIG_ENOUGH - 1, "%s.txt" argv[1]);
oder (leider nicht standardkonform);
char *filename = alloca(strlen(argv[1]) + 5); strcat(filename, ".txt");
alloca(int size) reserviert size-viele Bytes auf dem Stack, d.h. nach verlassen des Scopes wird es automatisch freigegeben.