招生考试网
学历| 高考 美术高考 考研 自考 成考 专升本 中考 会考 外语| 四六级 职称英语 商务英语 公共英语 日语能力 翻译资格 JTEST
资格| 公务员 报关员 银行从业 司法 导游 教师资格 报关 财会| 会计证 经济师 会计职称 注册会计 税务师 资产评估 审计师
工程| 一建 二建 造价师 造价员 咨询师 监理师 安全师 医学| 卫生资格 执业医师 执业药师 执业护士 | 教案 论文 文档
IT类| 计算机等级 计算机软考 职称计算机 高校计算机 推荐-国家公务员 事业单位招聘 军校国防生 自主招生 艺术特长生 招飞
 3773考试网 - 计算机等级考试 - 考试辅导 - 计算机二级 - 正文

2014计算机二级C语言要点分析:函数

来源:2exam.com 2014-6-17 16:01:29

 

(2)全局变量的作用域及生存期

  全局变量的作用域为从变量定义的位置开始,到整个源程序文件结束为止。生存期为整个程序的运行期间。

  注意:全局变量在整个程序运行期间都占用内存空间。全局变量必须在函数以外定义,因而降低了函数的通用性,影响函数的独立性。使用全局变量时,当全局变量的值意外改变时,会引起副作用,这种错误一般难以查找。

  ①在同一编译单位内用extern标识符来扩展全局变量的作用域

  当全局变量定义后,在引用函数前,应在引用它的函数中用extern对此全局变量进行说明,以便使编辑程序确定此外部变量已被定义,不必再为它分配存储单元,此时的作用域从extern说明开始,到此函数结束。

  注意:全局变量的定义只能出现一次,这时不可使用extern标识符。如果多次引用全局变量,这时必须用extern标识符。

  ②在不同编译单位内用extern标识符来扩展全局变量的作用域

  C语言中的不同函数可以存放在不同的源程序文件中,每个源程序文件可以单独进行编译,进行语法检查,再生成目标文件,最后用系统提供的连接程序把多个目标文件连接成一个可执行程序。

  当程序由多个源程序文件组成时,若每个文件中都要引用同一个全局变量,这时如在每个源程序文件中都定义一个所需的同名全局变量,将在连接时产生重复定义错误。解决的办法是在其中一个源程序文件中定义所有全局变量,而在其他用到全局变量的源程序文件中用extern对这些变量进行说明,以表明它们已在其他编译单元中被定义。

  ③静态全局变量

  当用static标识符说明全局变量时,全局变量为静态全局变量。静态全局变量只能在定义它的源程序文件中使用,不能被其他源程序文件使用。

  7.8 内部函数及外部函数

  根据函数能否被其他源程序文件所调用,可将函数分为内部函数和外部函数。

  1.内部函数

  内部函数是指一个函数只能由定义它的源程序文件所调用,内部函数又称为静态函数。

  格式:static类标函数名(类型名 形参数1,类型名 形参数2,…)

  上面的定义格式中,static用于说明函数为内部函数。

  2.外部函数

  外部函数是指可以被其他源程序所调用的函数。

  格式[extern]类型标识符 函数名(类型名 形参数1,类型名 形参数2,…)

  上面定义格式中,extern表明所定义的函数为外部函数,当extern被省略时,隐含为外部函数。

  注意:在要调用此函数的源程序文件中,一般要用extern标识符说明所用的函数为外部函数。


  • 上一个文章:
  • 网站版权与免责声明
    ①由于各方面情况的不断调整与变化,本网所提供的相关信息请以权威部门公布的正式信息为准.
    ②本网转载的文/图等稿件出于非商业性目的,如转载稿涉及版权及个人隐私等问题,请在两周内邮件fjksw@163.com联系.


    | 关于我们 | 联系我们 | 版权申明 | 网站导航 |
    琼ICP备12003406号