Chinaunix首页 | 论坛 | 博客
  • 博客访问: 959897
  • 博文数量: 173
  • 博客积分: 3436
  • 博客等级: 中校
  • 技术积分: 1886
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-07 09:29
文章分类

全部博文(173)

文章存档

2016年(6)

2015年(10)

2014年(14)

2013年(8)

2012年(36)

2011年(63)

2010年(19)

2009年(17)

分类: C/C++

2014-04-08 17:32:17

每个关键字都有一个小故事

#if     defined(DEBUG_ASSERT)
#define      STATIC
#else
#define      STATIC          static
#endif
backtrace()
  Note that names of "static" functions
       are not exposed, and won't be available in the backtrace.
These functions make some assumptions about how a function's return
       address is stored on the stack.  Note the following:

       *  Omission of the frame pointers (as implied by any of gcc(1)'s
          nonzero optimization levels) may cause these assumptions to be
          violated.

       *  Inlined functions do not have stack frames.

       *  Tail-call optimization causes one stack frame to replace another.

       The symbol names may be unavailable without the use of special linker
       options.  For systems using the GNU linker, it is necessary to use
       the -rdynamic linker option.  Note that names of "static" functions
       are not exposed, and won't be available in the backtrace.



阅读(784) | 评论(0) | 转发(0) |
0

上一篇:int3

下一篇:an SITD error with EHCI

给主人留下些什么吧!~~