2012-05-04 47 views
-1

我们需要编写一个C/C++代码。它将检查分配给初始程序的内存和返回系统的内存是否相同。C/C++程序使用多少内存

我的想法是在开始时和结束时找到内存使用情况并进行相减;

但是如何找到内存使用情况。

请任何其他想法。

+1

这可能高度依赖于您正在使用的操作系统。你正在使用哪种操作系统? – 2012-05-04 05:31:45

+0

可能的重复:http://stackoverflow.com/questions/9748792/how-to-get-heap-size-of-a-program –

+2

如果你需要C代码,你为什么要标记你的问题C++? –

回答

1

如果您使用的是基于Linux/Unix的操作系统,你可以涉及到顶部工具ANS看到difference.no需要重新发明轮子。在C代码

使用本:

uint find_memory_usage() 
{ 

    sprintf(cmd, "/bin/top"); 
    system(cmd); 
} 

可以使用exec类的函数或系统调用,以及这一点。 SO link也可能有所帮助。 或this一。

-1

我觉得这个代码将帮助你找到你的C代码大小:

#include<stdio.h> 
#include<bios.h> 
int main(void) 
{ 
printf("memory size %d kbite\n", biosmemory()); 
return 0; 
} 
+0

int main(void) { printf(“memory size% d kbite \ n“,biosmemory()); int * a = new int [10000]; printf(“内存大小%d kbite \ n”,biosmemory()); } – kamal

+1

世界上有什么是'bios.h'?我从来没有见过那个标题。 –