Geschrieben von LULUFEE am 17.05.2015 um 13:13:
Malloc und Free C Programmierung
Meine Frage:
Hallo,
ich muss zur Übung diese 3 Beispiele auf Ihre Fehler überprüfen. Leider bin ich glaub ich echt sehr blind, was das betrifft

(Anfang 1.Semster). Habe eigentlich gedacht, das wäre total easy, aber irgendwie ist der Groschen doch nicht gefallen. Daher diese Übung.
a)
1 c h a r * ausgabe = " S p e i c h e r v e rwa l t u n g \ n " ;
2 c h a r * z i f f e r n = ma l l o c ( s i z e o f ( c h a r ) * 1 0 ) ;
3 f o r ( i n t i =0 ; i <11; i ++){
4 *( z i f f e r n + i ) = ' 0 ' + i ;
5 }
6 f r e e ( ausgabe ) ;
7 f r e e ( z i f f e r n ) ;
b)
1 i n t * i ;
2 f o r ( i n t k=0 ; k <10; k++) {
3 i = ma l l o c ( s i z e o f (2* i n t ) ) ;
4 i f ( i == NULL) { / * a u s g e l a s s e n : Fehl e rme ldung , Programm beenden * / }
5 i n t * j ;
6 j = i ;
7 i ++ ;
8 * i = k ;
9 f r e e ( i ) ;
10 }
c)
1 i n t ** ma t r i x ;
2 ma t r i x = ma l l o c (3* s i z e o f ( c h a r ) ) ;
3 i f ( ma t r i x != NULL) {
4 f o r ( i n t i =0 ; i <3; i ++){
5 ma t r i x [ i ] = ma l l o c (3* s i z e o f ( i n t ) ) ;
6 }
7 / * a u s g e l a s s e n : Uebe rprufung und e twa s mi t d e r Ma t r ix t u n * /
8 }
9 f r e e ( ma t r i x ) ;
Meine Ideen:
Meine korrigierten Lösungsvorschläge:
a)
1. char *ausgabe;
2.char *Ziffern
3. char= "Speicherverwaltung\ n " ;
4. Ziffern= malloc (sizeof(char)*10;
b)