1)自定義程式的入口
(2)合併區段
(3)不用調malloc,free等函式
(3)不用cout來輸出,cin來輸入
(4)如果呼叫了很多庫函式如memset,stycpy等等
的話,請匯入msvcrt.lib,不然編譯器會在程式裡面
匯入靜態庫,這樣的話程式就會大很多。。
(5)window
程式設計不用mfc...
減少程式執行記憶體佔用量可以呼叫
setprocessworkingsetsize(getcurrentprocess(),-1,-1);
----------sample.cpp---------------------
#include
#include "sample.h"
#include "mydll.h"
#include "resource.h"
//這下面自定義函式入口
#pragma comment(linker, "/entry:entrypoint")
#pragma comment(linker,"/align:0x400")
//設定區段屬性,跟區段在記憶體起始位址
//這裡面要加寫入的許可權,不然程式就執行不了了
//e為執行,r為可讀,w為可寫
//更多的說明請參見msdn
#pragma comment(linker,"/section:.text,erw /align:0x1000")
//下面合併區段,
#pragma comment(linker,"/merge:.data=.text")
#pragma comment(linker,"/merge:.rdata=.text")
//下面匯入函式
#pragma comment(lib,"mydll.lib")
//下面是函式的入口
//得到winmain裡面的幾個引數
//hinstance hinstance=getmodulehandle(null)
//lpstr lpcmdline= getcommandline()
//int ncmdshow 這個可以自己填
void entrypoint()
int_ptr callback sample::dialogproc(hwnd hwnd, uint message, wparam wparam, lparam lparam)
break;
} return 0;
} sample::sample(hinstance hi)
int sample::wndpro_command(wparam wparam,lparam lparam)
return 0;
} int sample::wndpro_close()
int sample::init()
int sample::loaddll()
uint malloc_(size_t num)
void free_(void * p)
void zeromem(char * mem,int len)
int apientry test(hwnd hwnd)
優化C 程式編譯效率的實
發帖人 flytothespace 時 間 詳細資訊 1 自定義程式的入口 2 合併區段 3 不用調malloc,free等函式 3 不用cout來輸出,cin來輸入 4 如果呼叫了很多庫函式如memset,stycpy等等 的話,請匯入msvcrt.lib,不然編譯器會在程式裡面 匯入靜態庫,這樣...
C程式的效率優化建議
程式設計時要經常注意 的效率。在保證軟體系統的正確性 穩定性 可讀性及可測性的前提下,提高 效率。效率分為全域性效率 區域性效率 時間效率及空間效率。全域性效率是站在整個系統的角度上的系統效率 區域性效率是站在模組或函式角度上的效率 時間效率是程式處理輸入任務所需的時間長短 空間效率是程式所需記憶體...
優化遞迴的效率
函式遞迴呼叫是很常見的做法,但是它往往是低效的,本文 優化遞迴效率的思路。1.尾遞迴轉換成迭代 尾遞迴是一種簡單的遞迴,它可以用迭代來代替 比如 求階乘函式的遞迴表達 f int n 可以轉換成完全等價的迴圈迭代 f int n 尾遞迴是最簡單的情形,好的編譯器甚至可以自動的識別尾遞迴並把它轉換成迴...