#include #include int main(int argc, char* argv[]) { MEMORYSTATUSEX ms; ms.dwLength = sizeof (ms); void *first = malloc(4096*16); void *prev = first; while (true) { void *mem = malloc(4096*16); if (mem == 0) { printf("malloc failed!\n"); break; }; *(void **)prev = mem; prev = mem; void *walk = first; while (walk != mem) walk = *(void **)walk; GlobalMemoryStatusEx(&ms); printf("avail phys = %d \r", ms.ullAvailPhys/1024); fflush(stdout); } return 0; }