【问题标题】:how much memory a C/C++ program is using [closed]C/C++ 程序使用了多少内存 [关闭]
【发布时间】:2012-05-04 05:27:43
【问题描述】:

我们需要编写一个 C/C++ 代码来检查最初分配给程序的内存和返回给系统的内存是否相同。

我的想法是在开始和结束时找到内存使用情况并减去。

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

请有其他想法。

【问题讨论】:

标签: c++ c


【解决方案1】:

如果您使用的是基于 Linux/Unix 的操作系统,您可以使用 top 实用程序并查看差异。无需重新发明轮子。

在你的 c 代码中使用它:

uint find_memory_usage()
{

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

您也可以为此使用 exec 系列函数或系统调用。 SO上的link也可能有帮助。 或this 一个。

【讨论】:

    【解决方案2】:

    我认为这段代码将帮助你找到你的 c 代码的大小:

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

    【讨论】:

    • int main(void) { printf("内存大小 %d kbite\n", biosmemory()); int *a= 新的 int[10000]; printf("内存大小 %d kbit\n", biosmemory()); }
    • bios.h 到底是什么?我从没见过那个标题。
    猜你喜欢
    • 1970-01-01
    • 2019-04-20
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    • 2013-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多