日期:2014-05-16  浏览次数:20748 次

如何在自己的程序中替换linux标准库函数
在我的程序使用了stdlib.c中的system()函数
现在在做测试,需要用自己定义的system空函数,替换掉标准库的system函数。。。。
应该怎么做。。

------解决方案--------------------
两个方法
一、你定义一个system函数,然后不要include stdlib.h
二、你使用#define system mysystem 然后在mysystem定义你要的功能。
------解决方案--------------------
你自己的system()也做成一个.so,然后执行时用LD_PRELOAD指定这个so使得加载器优先加载你自己的这个.so,这样你调system就是调你自己.so里的system了。