用c/c++/批处理 实现如下功能, 运行指定程序,在程序结束后,输出其运行时间和内存占用大小
展开全部
#include <time.h>
double start,finish;
程序运行时间,在程序开始处 用
start=(double) clock(); 获得开始 时间
在程序结束处用
finish=(double)clock(); 获得结束 时间
然后 输出 时间差 毫秒 数:
printf("%.4f ms",finish-start);
----------------------------
程序 使用内存 情况 可以 用 system(命令字符串)获取 所有 进程 内存 使用 情况,并 存入一个 文本文件,然后 从这个文本 中 根据 本程序 名,选出 属于 该程序的 那行信息。
命令字符串的例子: system( "wmic process list MEMORY >>log.txt");
将获得 所有 进程 以下内存 信息:
Handle MaximumWorkingSetSize MinimumWorkingSetSize
Name PageFaults PageFileUsage PeakPageFileUsage
PeakVirtualSize PeakWorkingSetSize PrivatePageCount QuotaNonPagedPoolUsage QuotaPagedPoolUsage
QuotaPeakNonPagedPoolUsage QuotaPeakPagedPoolUsage
VirtualSize WorkingSetSize
再利用 system() 调用 DOS find 命令 取出 含本程序名 的 一行, 或自己写一段程序,打开文件,读出所要的这行提供的内存信息。
关于 wmic, 请自己 学习,这里没法开课。
double start,finish;
程序运行时间,在程序开始处 用
start=(double) clock(); 获得开始 时间
在程序结束处用
finish=(double)clock(); 获得结束 时间
然后 输出 时间差 毫秒 数:
printf("%.4f ms",finish-start);
----------------------------
程序 使用内存 情况 可以 用 system(命令字符串)获取 所有 进程 内存 使用 情况,并 存入一个 文本文件,然后 从这个文本 中 根据 本程序 名,选出 属于 该程序的 那行信息。
命令字符串的例子: system( "wmic process list MEMORY >>log.txt");
将获得 所有 进程 以下内存 信息:
Handle MaximumWorkingSetSize MinimumWorkingSetSize
Name PageFaults PageFileUsage PeakPageFileUsage
PeakVirtualSize PeakWorkingSetSize PrivatePageCount QuotaNonPagedPoolUsage QuotaPagedPoolUsage
QuotaPeakNonPagedPoolUsage QuotaPeakPagedPoolUsage
VirtualSize WorkingSetSize
再利用 system() 调用 DOS find 命令 取出 含本程序名 的 一行, 或自己写一段程序,打开文件,读出所要的这行提供的内存信息。
关于 wmic, 请自己 学习,这里没法开课。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询