全局变量可使用static关键词进行定义,由于全局变量一直存在,

题目

全局变量可使用static关键词进行定义,由于全局变量一直存在,占用了大量的内存单元,且加大了程序的耦合性,不利于程序的移植或复用。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下关于局部变量和全局变量的叙述正确的是()

A.main函数中定义的变量是局部变量

B.局部变量可以与全局变量重名

C.在所有函数外定义的变量是全局变量

D.形式参数不是局部变量


正确答案:ABC

第2题:

以下说法错误的是:()

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

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

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

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


正确答案:A

第3题:

在Visual FoxPro中,下列变量中需要事先定义的是( )。

A) 私有变量、局部变量、数组变量

B)全局变量、局部变量、数组变量

C)全局变量、私有变量、数组变量

D)全局变量、局部变量、私有变量


正确答案:B

第4题:

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

A.extern

B.register

C.auto

D.static


正确答案:D

第5题:

进行初始化即可自动获得初值0的变量包括( )。

A.任何用static 修饰的变量

B.任何在函数外定义的变量

C.局部变量和用static 修饰的全局变量

D.全局变量和用static 修饰的局部变量


正确答案:D

第6题:

全局变量的存储类型可以定义为

A.auto或static

B.extern或register

C.auto或extern

D.extern或static


正确答案:D 

第7题:

在C语言中,static类型的变量在函数内说明,而在整个程序运行期间都存在,因此C语言中全局变量的存储类别是static。()

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


参考答案:错误

第8题:

以下叙述中正确的是

A.全局变量的作用域一定比局部变量的作用域范围大

B.静态(static)类别变量的生存期贯穿于整个程序的运行期间

C.函数的形参都属于全局变量

D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值


正确答案:B

第9题:

static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?


正确答案:
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效,在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用,因此可以避免在其它源文件中引起错误。
从以上分析可以看出, 把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它的作用域, 限制了它的使用范围。
static函数与普通函数作用域不同。仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件

static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;
static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值;
static函数与普通函数有什么区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝

第10题:

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

A.auto

B.register

C.extern

D.static


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

更多相关问题