Witam,
przeglądam pewne arkusze egzaminacyjne. Natrafiłem na takie zadanie:
#include<stdlib.h> //1
int *bb, aa[2][3], cc, dd, ee; //2
main(){ //3
long int aa, *hh[2],*cc; //4
for(aa=1;aa<=4;aa++){ //5 M0
long int *dd=&aa; //6
hh[aa%2]=(int*)malloc(3*sizeof(int)); //7 M1
switch(*dd){ //8
case 1: bb=hh[1]; //9 M2
case 2: cc=hh[0]; //10
} //11
} //12
if(1){ //13
char bb=’a’, cc[2]={bb++}; //14
dd=(bb+cc[1])/(*cc); //15 M3
while(0){ //16
static int bb=1, cc, dd; //17
double ff=aa; //18
cc=(int)ff; //19 M4
} //20
} //21
//22 M5
} //23
Napisz fragment kodu, który umieszczony w linii 22
zapobiegnie utworzeniu śmieci.
Czy wystarczy użyć funkcji free?