Chinaunix

标题: 函数里的 extern变量? [打印本页]

作者: dxbh    时间: 2009-02-26 14:16
标题: 函数里的 extern变量?


  1. void *fun(){

  2. extern unsigned statusCode;
  3. statusCode = rtspClient->describeStatus();

  4. }

复制代码


函数里的局部变量为什么要申明为extern?

[ 本帖最后由 dxbh 于 2009-2-26 14:49 编辑 ]
作者: 雨过白鹭洲    时间: 2009-02-26 14:37
声明而已,在函数内声明,就只能在函数内使用

但是这个变量是在其它文件中定义的
作者: zhuhefang2006    时间: 2009-02-26 23:46
原帖由 dxbh 于 2009-2-26 14:16 发表


void *fun(){

extern unsigned statusCode;
statusCode = rtspClient->describeStatus();

}



函数里的局部变量为什么要申明为extern?



说明它是其它文件里定义的变量
在本文件里要用到它
先声明一下,后面的代码就可以知道这个变量是什么类型的了
作者: alibabatea    时间: 2009-02-27 10:07
it has been defined in another source file
作者: nlchjian    时间: 2009-02-27 10:33
在其他文件定义的,应该是 unsigned statusCode 的全局变量吧?
作者: langue    时间: 2009-02-27 12:22
为啥不可以?一点也不冲突。
声明本地外部对象是完全可行的。
注意:“本地”和“外部”对这个对象所起到的限定作用,事实上并不相交。
本地:该名称的作用域
外部:该对象的 linkage
作者: gobbin    时间: 2009-02-27 14:55
可能是在其他文件中定义的在这里使用~~




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2