更多“如果在一个文件内需要使用在其他文件中定义的全局变量,则需要在引用该变量的文件内,用extern对此变量做说明。”相关问题
  • 第1题:

    静态全局变量既可以在定义它的源文件中访问,又可以在其他源文件访问。()

    此题为判断题(对,错)。


    正确答案:错误

  • 第2题:

    以下说法错误的是:()

    A.全局变量就是在函数外定义的变量,因此又叫做外部变量

    B.一个函数中既可以使用本函数中的局部变量,也可以使用全局变量

    C.局部变量的定义和全局变量的定义的含义不同

    D.如果在同一个源文件中,全局变量和局部变量同名,则在局部变量的作用范围内,全局变量通常不起作用


    正确答案:A

  • 第3题:

    已知double var;是文件F1.CPP中的一个全局变量定义,若文件F2.CPP中的某个函数也需要访问,则在文件F2.CPP中var应说明为______。


    正确答案:外部变量
    外部变量

  • 第4题:

    全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?


    正确答案:
    答:可以,在不同的C文件中以static形式来声明同名全局变量。
    可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错

  • 第5题:

    在一个C++源程序文件中定义的全局变量的有效范围是( )。

    A.该C++程序的所有源程序文件

    B.本源程序文件的全部范围

    C.从定义变量的位置开始到本源程序文件结束

    D.函数内部全部范围


    正确答案:C

  • 第6题:

    若程序中定义了局部变量与全局变量,则(11)。A.在函数内只能访问局部变量,而不能访问全局变量SX

    若程序中定义了局部变量与全局变量,则(11)。

    A.在函数内只能访问局部变量,而不能访问全局变量

    B.局部变量与全局变量的名字不得相同

    C.若一个函数被多次调用,则其定义的局部变量必定分配同一个存储单元

    D.函数中定义的局部变量与全局变量同名时,在函数内引用的是局部变量


    正确答案:D
    本题考查程序语言的基本概念。在高级语言程序中,变量的作用域(引用变量的代码范围)可能是全局的或者是局部的。对于全局变量,其作用域是整个程序(或文件),因此在函数内可以访问全局变量,而局部变量的作用域为声明(定义)该变量的函数(过程,子程序)。一般语言都规定,若全局变量和局部变量的名称相同,则在局部变量的作用域范围内,引用的是局部变量(即最近嵌套原则)。程序运行过程中,每次调用一个函数时,都在栈区为该函数的运行创建活动记录(主要包括函数运行时需要的数据和控制信息),函数运行结束后则释放为其分配的活动记录。因此,函数多次运行时,其定义的局部变量不一定分配同一个存储单元。

  • 第7题:

    在一个源文件中定义的全局变量的作用域为(38)。

    A.本文件的全部范围

    B.本程序的全部范围

    C.本函数的全部范围

    D.从定义该变量的位置开始至本文件结束为止


    正确答案:D
    解析:本题考查全局变量的作用域。这里我们首先需要准确理解几个概念。作用域是指一个声明的标识符在程序中有效的区域或范围。全局变量是指存放在全局数据区,具有全局作用域的变量。在一个源文件中定义的全局变量的作用域为从定义该变量的位置开始至本文件结束为止。

  • 第8题:

    在一个单元中,全局变量和局部变量的含义是什么?说明在单元文件中如何定义这两种变量(可举例说明)。


    正确答案:
    局部变量只能在定义它的程序块中使用,且其生命周期也只存在于从程序块开始执行到程序块执行结束。在一个事件处理程序中的变量说明部分,能够定义一个局部变量,供该事件处理程序内部使用。
    而全局变量可以在单元中的各程序块中使用(共享),且生命周期存在于整个单元代码的活动期中。
    在 Implementation 保留字后(但不要在程序块里)定义的变量就是全局变量。

  • 第9题:

    C语言中()可以置于变量或者函数前,以表示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。

    • A、typedef
    • B、ifdef
    • C、define
    • D、extern

    正确答案:D

  • 第10题:

    在一个C程序中,若要定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量需要定义的存储类别为()。


    正确答案:extern

  • 第11题:

    单选题
    以下针对全局变量的叙述错误的是(  )。
    A

    全局变量的作用域是从定义位置开始至源文件结束

    B

    全局变量是在函数外部任意位置上定义的变量

    C

    用extern说明符可以限制全局变量的作用域

    D

    全局变量的生存期贯穿于整个程序的运行期间


    正确答案: A
    解析:
    在不同编译单位内用extern说明符来扩展全局变量的作用域,extern可以将全局变量作用域扩展到其他文件,而不是限制全局变量的作用域。答案选择C选项。

  • 第12题:

    单选题
    某文件中定义的静态全局变量(或称静态外部变量)其作用域是()
    A

    只限某个函数

    B

    本文件

    C

    跨文件

    D

    不限制作用域


    正确答案: A
    解析: 暂无解析

  • 第13题:

    在一个源文件中定义的全局变量的作用域为:()

    A.本程序的全部范围

    B.本函数的全部范围

    C.从定义该变量的位置开始到本文件结束

    D.以上说法都不正确


    正确答案:C

  • 第14题:

    如果一个函数位于C程序文件的上部,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量().

    A.为全局变量,在本程序文件范围内有效

    B.为局部变量,只在该函数内有效

    C.为局部变量,只在该复合语句中有效

    D.定义无效,为非法变量


    正确答案:C

  • 第15题:

    在一个C源程序文件中所定义的全局变量,其作用域为

    A.所在文件的全部范围

    B.所在程序的全部范围

    C.所在函数的全部范围

    D.由具体定义位置和extern说明来决定范围


    正确答案:D
    解析:全局变量的有效范围是从定义变量的位置开始到本源文件结束。如果需要在其他源文件中使用该全局变量,则可以在其他源文件中使用extern关键字来声明该全局变量,这样该全局变量的作用域就被扩展到以extern声明了该全局变量的位置开始到此源文件结束。故本题的正确答案为D。

  • 第16题:

    若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需“要使用的存储类别是( )。

    A.extern

    B.register

    C.auto

    D.static


    正确答案:D

  • 第17题:

    在一介C源程序文件中,要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使削的存储类别是( )。

    A.auto

    B.register

    C.extern

    D.static


    正确答案:D
    解析:“auto”类定义的自动变:鞋实质上是一个函数内部的局部变量,作用域是在所说明的函数中;“register”说明只能用于说明函数中的变量和参数中的形参,因此不允许将外部变量或静态变量说明为register;“extern”是定义在所有函数之外的全局变量,它可以被所有的函数访问,在所有函数体的内部是有效的,所以函数之间可以通过外部变量直接传递数据;“static”为允许本源文件中所有函数使用的全局变量。

  • 第18题:

    在不同文件的函数中,对非静态全局变量的引用要加的关键字是( )。

    A.register

    B.auto

    C.static

    D.extern


    正确答案:D

  • 第19题:

    在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量使用的存储类别是______。

    A.extern

    B.register

    C.auto

    D.static


    正确答案:D

  • 第20题:

    在C语言程序中定义全局变量,如果该变量使用关键字static作为存储类别说明符,则它的作用域是()

    • A、整个程序范围
    • B、定义该变量的源文件范围
    • C、main函数内部
    • D、从定义该变量的位置开始直至程序结束

    正确答案:B

  • 第21题:

    某文件中定义的静态全局变量(或称静态外部变量)其作用域是()

    • A、只限某个函数
    • B、本文件
    • C、跨文件
    • D、不限制作用域

    正确答案:B

  • 第22题:

    全局变量的作用域是从变量定义的位置开始,到所在源文件结束。


    正确答案:正确

  • 第23题:

    问答题
    在一个单元中,全局变量和局部变量的含义是什么?说明在单元文件中如何定义这两种变量?

    正确答案: 局部变量只能在定义它的程序块中使用,且其生命周期也只存在于从程序块开始执行到程序块执行结束。在一个事件处理程序中的变量说明部分,能够定义一个局部变量,供该事件处理程序内部使用。
    而全局变量可以在单元中的各程序块中使用(共享),且生命周期存在于整个单元代码的活动期中。
    在Implementation保留字后(但不要在程序块里)定义的变量就是全局变量。
    解析: 暂无解析

  • 第24题:

    单选题
    在一个C源程序文件中所定义的全局变量,其作用域为(  )。
    A

    所在文件的全部范围

    B

    所在程序的全部范围

    C

    所在函数的全部范围

    D

    由具体定义位置和extern说明来决定范围


    正确答案: A
    解析:
    全局变量是在函数外部任意位置上定义的变量,它的作用域是从变量定义的位置开始,到整个源文件结束止。答案选择D选项。