XeoX
Mitglied
Ich habe folgenden Code und zwar, wenn ich als Namenanzahl 5 oder größer Eintrage, wir meiner erster Eingegebender Name Gelöscht. Also auf dem Index Null! Hat da jemand eine Idee?
Danke schon mal!
Das Passiert mir mit Borland C ++ 5.2 mit dev C++ klappt es bei mir wunderbar!
Xeox
Code:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#define MAXLAENGE 51
int main (void) {
char swap[MAXLAENGE];
int NamAnz = 0, index;
char dummy[81];
char** PtrNamPtrArr = NULL;
printf("\n\n");
printf("Anzahl der Namen: "); scanf("%d", &NamAnz);
printf("\n\n");
if (NamAnz < 1) NamAnz = 1; else if (NamAnz > 10) NamAnz = 10;
gets(dummy);
PtrNamPtrArr = (char **) calloc (NamAnz, sizeof(char));
for (index = 0; index < NamAnz; index++) {
printf("Name %2d: ", index + 1);
fgets(swap, MAXLAENGE, stdin);
swap[strlen(swap) - 1] = '\0';
PtrNamPtrArr[index] =(char*) malloc (strlen(swap) + 1);
strcpy(PtrNamPtrArr[index], swap);
printf("Name %d: %s\n", index + 1, PtrNamPtrArr[index]);
printf("Name %d: %s\n", index + 1, PtrNamPtrArr[0]);
}
for (index = 0; index < NamAnz; index++)
printf("Name %d: %s\n", index + 1, PtrNamPtrArr[index]);
gets(dummy);
free(PtrNamPtrArr);
return 0;
}
Das Passiert mir mit Borland C ++ 5.2 mit dev C++ klappt es bei mir wunderbar!
Xeox
Zuletzt bearbeitet: