Dynamischer Speicher
-
Hier ist der Aufruf laut der gesamten Aufgabenstellung zu "malloc."
"Der Aufbau des dynamischen Speichers soll mit malloc realisiert werden".
-
Cobain schrieb:
ich habe etwas weiter gemacht und der jetzige Code funktioniert und gibt mir geforderte tabelle aus.
Der Unterschied zu dem Code aus deinem Eröffnungspost ist, dass du jetzt ein char-Array hast.
Cobain schrieb:
Das Problem, dass ich jetzt immer noch habe ist der Einsatz von "malloc" in meinem Code.
Wie das geht, habe ich schon geschrieben.
Vieleicht wäre es jetzt doch mal an der Zeit, die genaue Aufgabenstellung zu zeigen.(nicht nur Auszüge)
-
.ö
-
Dann mach das doch, was in der Aufgabenstellung steht.
Du musst dann nur deine 9en in den
for
-Schleifen durch DIM_ZEILE bzw DIM_SPALTE ersetzen.Nochmal langsam:
Die #defines werden unter den #include in das Programm eingebaut.
Da wo du in
main
das FELD[9][9] hast, kommt dasmalloc
-Beispiel aus der Aufgabenstellung.
Dann passt du noch die Parameter der Funktionen an.
Die 9en nicht vergessen.
-
ich glaube ich habe mehrere Fehler gemacht aber versteh nicht so ganz welche.
#include <stdio.h> #include <stdlib.h> #define GROESSE_FELD 4 #define DIM_ZEILE GROESSE_FELD * 2 + 1 #define DIM_SPALTE GROESSE_FELD * 2 + 1 void spielGeruest(char **spielfeld){ int i = 0, j = 0; for(i = 0; i < (DIM_ZEILE); i++){ for(j = 0; j < (DIM_SPALTE); j++){ if(!(i%2)){ if(!(j%2)){ spielfeld[i][j] = '|'; } else{ spielfeld[i][j] = '-'; } } else{ if(!(j%2)){ spielfeld[i][j] = '|'; } else{ spielfeld[i][j] = 'x'; } } } } } void ausgabeSpielfeld(char **spielfeld){ int i,j; for(i=0;i<9;i++) { for(j=0;j<9;j++) { printf(" %c ",spielfeld[i][j]); } printf("\n"); } } int main () { int i; char spielfeld[DIM_ZEILE][DIM_SPALTE]; char **Feld; Feld = (char**)malloc(sizeof(char*)* DIM_ZEILE); for(i=0;i<DIM_SPALTE;i++) { Feld[i] = (char*)malloc(sizeof(char)* DIM_SPALTE); } ausgabeSpielfeld(Feld); }
-
Cobain schrieb:
ich glaube ich habe mehrere Fehler gemacht aber versteh nicht so ganz welche.
Wie stellst du fest, dass da Fehler sind?
-
ich hab den Fehler gefunden! ich habe einfach nur vergessen die Funktionen in der main aufzurufen
Aufjedenfall Vielen Dank bei der Unterstützung ihr habt mir alle zusammen wirklich sehr weiter geholfen