
编程技术
liyiwen007
天地有大美而不言
展开
-
函数调用栈一例
前几天和柯柯交流一个小问题,说是如何在一个函数内得到调用该函数的函数地址。有点拗口,就是说如果有一个函数A(当然我们在这个问题中并不知道它是哪个函数)调用了B函数,现在希望用个什么办法得到A函数的地址。 我首先联想到的是,一般调试器都能给出嵌套的函数调用关系。那么肯定是有什么办法解决这个问题。上网查了一通之后只找到一些debug用的API和一些开发环境提供的调整宏...2009-03-08 21:25:40 · 279 阅读 · 0 评论 -
do {} while (0)的用途
#define MACRO_NAME(para) do{macro content}while(0) 的格式,总结了以下几个原因: 1、空的宏定义避免warning:#define foo() do{}while(0) 2、存在一个独立的block,可以用来进行变量定义,进行比较复杂的实现。 3、如果出现在判断语句过后的宏,这样可以保证作为一...原创 2009-05-10 13:15:00 · 94 阅读 · 0 评论