char **c initialisieren
-
-
char* muahua[]= { "ene", "mene", "miste", "ich", "p*ss", "gleich", "in", "die", "kiste", ":-D", 0 }; while( muahua[i] ) puts( muahua[i++] );
-
ghorst schrieb:
ich nehme mal an, du willst das ganze hinterher als string-array nutzen, dann müsstest du zuerst speicher für das array reservieren mittels malloc:
c = malloc(sizeof(CHAR)*anzahl_der_strings);das stimmt leider nicht ganz:
mit der Zeilec = malloc(sizeof(CHAR)*anzahl_der_strings);
legst du Speicher für "anzahl_der_strings" viele Chars an. Sprich einen
String mit dieser Länge.Richtig wäre:
c = (char*) malloc (sizeof(char*)*anzahl_der_strings
Gruss mcr
-
mcr schrieb:
Richtig wäre:
c = (char*) malloc (sizeof(char*)*anzahl_der_strings
Gruss mcr
Richtig wäre:
c = malloc ( sizeof(char*) * anzahl_der_strings )
-
[quote="lasjasjfasjfaö"]
mcr schrieb:
Richtig wäre:
c = malloc ( sizeof(char*) * anzahl_der_strings )
stimmt da ist mir ein "*" verloren gegangen.
-
damit wollte ich zeigen, das casten nicht nötig ist
-
das weiß ich, darum habe ich auch dir und nicht mcr zugestimmt.
-
Hallo,
danke für eure Hilfe! Ich bin ein winziges stückchen weiter... bekomms aber trotzdem nich hin. egal was ich tue ich bekomm immer wieder einfach nur pointerexceptions...
-
ohne den quellcode zu sehen, kann dir da schwer geholfen werden
-
mein letztes Posting war Fehlalarm, ich hat noch n andren Fehler drinn...
mit dem entscheidenden Hinweis von enemenemuh geht es. Sein
muahua[] hab ich auf mein **Char c; zugewiesen und seit dem keine Probleme mehr. Also ganz konkret:char *m[]={"1","2","...","n",0}; char **c=m; while(c[i]) puts(c[i++]);
Danke für eure Hilfe!!!!
t4b-1re-2