在很多的腳本語言,我們有一個編程的方法是這樣的:如何用C語言重寫一個函數(系統調用)?
首先,有一個名爲FUNC功能:
void func()
{
}
其次,我想記錄一些信息,當客戶端調用這個函數,但我不想 修改功能,這樣我就可以這樣做:
void (*pfunc)(void) = func;
void func()
{
log("Someone call fund");
pfunc();
}
之後,誰打電話基金將打電話給我「覆蓋」功能。本是很多的腳本語言確定。我可以用C語言做同樣的事嗎?以及如何編碼?
我想用這種方法在一些3party庫中做一些工作,所以我必須做一些影響鏈接過程的事情,而不僅僅是編譯過程。
另外,爲此可能需要使用可變參數宏。 – netcoder 2012-08-03 14:46:28