#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#define BYTES_TO_KB 1024
int main(void) {
MEMORYSTATUSEX statex;
statex.dwLength = sizeof(statex);
GlobalMemoryStatusEx(&statex);
_tprintf(TEXT("%I64d KB\n"), statex.ullTotalPhys / BYTES_TO_KB);
_tprintf(TEXT("%.2f GB\n"), (statex.ullTotalPhys / BYTES_TO_KB) / (1024.0 * 1024.0));
printf("%lu KB\n", statex.ullTotalPhys / BYTES_TO_KB);
printf("%.2f GB\n", (statex.ullTotalPhys / BYTES_TO_KB) / (1024.0 * 1024.0));
return 0;
}
/*
run:
33485960 KB
31.93 GB
33485960 KB
31.93 GB
*/