C 得到當前程序所占用的記憶體

2021-06-19 08:06:26 字數 1711 閱讀 8713

使用sdk的psapi (process status helper)

中的boolgetprocessmemoryinfo(

handle

process

,

pprocess_memory_counters

ppsmemcounters

,

dword

cb

);

typedef struct _process_memory_counters process_memory_counters, 

*pprocess_memory_counters;

#include 

<

iostream

>

#include 

<

windows.h

>

#include 

<

psapi.h

>

#pragma

comment(lib,"psapi.lib")

using

namespace

std;

void

showmemoryinfo(

void

)int

main(

intargc,

char

* argv)

cout

<<

"開始釋放記憶體

"<<

endl;

for(

inti=0

;i<

sizeof

(buf)

/sizeof

(char

*);i

++ )

cout

<<

"**所有可**的記憶體

"<<

endl;

emptyworkingset(getcurrentprocess());

showmemoryinfo();

return0 ;

} 輸出:

記憶體使用:1339k/1339k + 356k/356k

**所有可**的記憶體

記憶體使用:114k/1425k + 356k/356k

開始動態分配記憶體

記憶體使用:430k/1425k + 466k/466k

記憶體使用:438k/1425k + 573k/573k

記憶體使用:446k/1425k + 679k/679k

記憶體使用:454k/1425k + 786k/786k

記憶體使用:462k/1425k + 892k/892k

開始釋放記憶體

記憶體使用:462k/1425k + 794k/892k

記憶體使用:454k/1425k + 692k/892k

記憶體使用:446k/1425k + 589k/892k

記憶體使用:438k/1425k + 487k/892k

記憶體使用:425k/1425k + 360k/892k

**所有可**的記憶體

記憶體使用:110k/1425k + 360k/892k

C 得到當前程序所占用的記憶體

使用sdk的psapi process status helper 中的boolgetprocessmemoryinfo handle process pprocess memory counters ppsmemcounters dword cb typedef struct process me...

C 得到當前程序所占用的記憶體

使用sdk的psapi process status helper 中的bool getprocessmemoryinfo handle process,pprocess memory counters ppsmemcounters,dword cb typedef struct process m...

程序執行時,所占用的記憶體

乙個程序執行時,所占用的記憶體,可以分為如下幾個部分 1 棧區 stack 由編譯器自動分配釋放,存放函式的引數值,區域性變數的值等。2 堆區 heap 一般由程式設計師分配釋放,若程式設計師不釋放,程式結束時可能由os 3 全域性變數 靜態變數 初始化的全域性變數和靜態變數在一塊區域,未初始化的全...