打印函数的轨迹

最近负责完成一个不算小的服务器程序,  虽然已经加了不少的异常判断以及printf, 但程序有时候还是会莫名其妙地挂掉, 跟踪调试多了, 实在让人害怕.

因此使用一个简单的宏来跟踪函数调用.

#define trace_fun() if(TRACE_FUN) fprintf(stderr, "-- %s\n", __FUNCTION__)

当然, 这样或许更好些

  #define trace_fun() {if(TRACE_FUN) fprintf(stderr, "-- %s\n", __FUNCTION__);}

在需要记录轨迹的函数开头加上 trace_fun() 即可.

以下为测试代码:

#include <stdio.h>

//#define trace_fun() if(TRACE_FUN) fprintf(stderr, "-- %s\n", __FUNCTION__)
#define trace_fun() {if(TRACE_FUN) fprintf(stderr, "-- %s\n", __FUNCTION__);}

#define TRACE_FUN 1
int test(void);

int main(int argc, char *argv[])
{
	trace_fun();
	test();
	return 0;
}

int test(void)
{
	trace_fun();
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值