Hoi,
Volgens den docs zou het mogelijk moeten zijn om met realloc ook te realloc'en naar een kleiner stuk geheugen.
Als ik dit test wordt er echter geen geheugen vrijgegeven.
de 2e malloc mislukt, terwijl _msize wel de 'gereallocte' grootte teruggeeft.
Weet iemand waarom dat zo is ?
Volgens den docs zou het mogelijk moeten zijn om met realloc ook te realloc'en naar een kleiner stuk geheugen.
Als ik dit test wordt er echter geen geheugen vrijgegeven.
code:
1
2
3
4
5
6
7
8
| size_t size = 0; void* p = malloc( sizeof(byte) * 1024*1024*1500 ); size = _msize( p ); p = realloc( p, 1 ); size = _msize( p ); void* p2 = malloc( sizeof(byte) * 1024*1024*750 ); |
de 2e malloc mislukt, terwijl _msize wel de 'gereallocte' grootte teruggeeft.
Weet iemand waarom dat zo is ?