1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
#include <stdlib.h>
#include "allfiles.h"
void * allKnownMem[3000];
int allKnownNum = 0;
void outputKnownMem () {
FILE * debu = fopen ("debuTURN.txt", "at");
fprintf (debu, "%i lumps:", allKnownNum);
for (int i = 0; i < allKnownNum; i ++) {
fprintf (debu, " %p", allKnownMem[i]);
}
fprintf (debu, "\n");
fclose (debu);
}
void adding (void * mem) {
allKnownMem[allKnownNum] = mem;
allKnownNum ++;
outputKnownMem ();
if (allKnownNum == 3000) {
//db ("Error! Array too full!");
exit (1);
}
}
void deleting (void * mem) {
allKnownNum --;
for (int i = 0; i <= allKnownNum; i ++) {
if (allKnownMem[i] == mem) {
allKnownMem[i] = allKnownMem[allKnownNum];
outputKnownMem ();
return;
}
}
//db ("Error! Deleted a block which hasn't been allocated!");
exit (1);
}
|