calloc - array
-
hallo
kann ich mit calloc auch ein array
dynamisch anlegen oder nur variablen
zbchar pfeld=NULL; pfeld=(char *)calloc(15,sizeof(char[255]); //wie greif ich auf alle elemente zu: strcpy(pfeld[0],"Hallo du"); printf("Ausgabe: %c",pfeld[0][1]); // Ausgabe: a
würde das so funktionieren
-
es funktioniert nicht weil calloc auch nur einen großen speicherbereich zurückgibt.
zugegeben, calloc initialisiert den speicher aber das hilft hier nicht.wenn du dynamisch 2D arrays machen willst, musst du die selber aufbauen.
sry, ich muss nochmal editieren:
erstmal bräuchtest du keinen "char pfeld" sondern einen "char **pfeld" für 2d arrays.dann müsstest du pfeld = (char**) calloc(15, sizeof(char*)); machen für die zeilen
dann for(i = 0; i < 15; ++i) pfeld[i] = calloc(1234, sizeof(char)); für die strings
hinterher nicht vergessen, alles mit free() wieder aufzurollen