
C/C++
文章平均质量分 74
clliu
这个作者很懒,什么都没留下…
展开
-
全局变量、局部变量、静态全局变量、静态局部变量的区别
<br />C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件作用域。<br /><br /> 从作用域看:<br /> 全局变量具有全局作用域。全局变量只需在一个源文件中定义,就可以作用于所有的源文件。当然,其他不包含全局变量定义的源文件需要用extern 关键字再次声明这个全局变量。<br /> 静态局部变量具有局部作用域,它只被初始化一次,自从第一次被初始化直到程序运行结束都一直存在,它和全局变量的区别转载 2010-10-08 18:38:00 · 540 阅读 · 0 评论 -
setjmp AND longjmp
setjmp/longjmp的典型用途是异常处理机制的实现:利用longjmp恢复程序或线程的状态,甚至可以跳过栈中多层的函数调用。两个函数的原型在setjmp.h中。 int setjmp(jmp_buf env) 创建本地的jmp_buf缓冲区并且初始化,用于将来跳转回此处。这个子程序保存程序的调用环境于env参数所指的缓冲区,env将被longjmp使用。如果是从setj原创 2013-03-09 22:24:56 · 934 阅读 · 0 评论