c语言中用static定义静态变量的位置不同有何区别

在子函数中使用static时的生命期是整个程序的运行期,那放外面不是一样吗?
为什么这样要省空间?

第1个回答  2015-02-21
放函数里时,函数外是不可以引用的,就是说,作用域不一样。我自己的原则是:全局变量,能少尽量少,这样不容易出错。生命周期是整个程序生命期,放哪都是占用同样大小的空间。追问

就是说放里面或者外面所占用的空间都是一样的 只是作用域有所不同?
假如使用全局变量 比较容易出哪些错误呢?命名冲突吗?

第2个回答  2015-02-21
作用域不同,放在函数内,其作用域仅在本函数内,而定义在函数外作用域则更大本回答被网友采纳

C语言动态变量和
C语言中的动态变量和静态变量在形式和作用上有所不同。首先,静态变量在定义时带有"static"修饰,如"static TYPE var_name = init_value",而动态变量则不使用此修饰,如"TYPE var_name = init_value","="后可省略初始值。在作用上,动态全局变量具有广泛的范围,它在整个项目中有效,从程序开始...

static在c语言中是什么意思?
static在c语言中是“静态”的意思,用于在函数中声明“静态变量”用,在每一次调用后,该变量并不在函数返回时立即释放,变量中保存的值,可以保留到下一次调用时继续有效。

c语言 数组的定义 加上static 和不加 有什么区别呢?
c语言中static关键字有两个作用,一是文件作用域,二是函数作用域。一、文件作用域 文件作用域关键字static的作用是,以static申明的全局变量、函数不得被其他文件所引用,例如:\/\/这是mystr.c文件的内容 include <string.h> static int num = 10;int mynum = 100;static int str_len(char *str...

C语言动态变量和静态变量的区别
一、形式不同:静态变量是在定义的时候,有static 修饰的变量,形式为static TYPE var_name = init_value;动态变量,形式为TYPE var_name = init_value;即没有static 修饰,其中的=init_value均可省略。二、作用不同:动态全局变量:作用域为整个项目,即最终编译成可执行文件的所有文件中均可以使用...

C语言动态变量和静态变量的区
C语言中的动态变量和静态变量在存储和作用域上有所不同。当在全局变量声明前添加"static"关键字,即形成了静态全局变量。静态全局变量和非静态(普通)全局变量一样,都采用静态存储方式,存储上没有本质差别。然而,它们的主要区别在于作用域。非静态全局变量的作用域覆盖整个源程序,无论源程序由多少个...

C语言中变量存储static和extern两个关键字的作用分别是什么
在C语言中,static可以用来修饰局部变量,全局变量以及函数。在不同的情况下static的作用不尽相同。(1)修饰局部变量 一般情况下,对于局部变量是存放在栈区的,并且局部变量的生命周期在该语句块执行结束时便结束了。但是如果用static进行修饰的话,该变量便存放在静态数据区,其生命周期一直持续到整个程序...

C语言编程中“static”是什么意思?
static 出现在不同的地方含义不同的。如果是在函数之外使用,表示该对像在此文件中是全局可访问的,在文件之外是不可访问的。如果出现在函数内部,则表示该变量不是自动变量,它是一个可以初始化的变量(如果不进行显式初始化,默认值是0)。改变了它的值以后,函数结束时它的值也会保留。

static int和int区别
在C语言中,static int和int有着不同的含义和用途。int是用于定义整数类型变量的标识符。它表示变量存储的是整数值,可以使用范围内的所有整数。static int是用于定义静态整型变量的关键字。静态整型变量在程序执行期间会一直存在,不会因为函数调用结束或者程序流程跳出当前作用域就被销毁。此外,静态整型...

C语言中的static
C语言中的static关键字在编程中扮演着重要的角色。首先,当在函数内部使用static声明一个变量时,它会变成局部静态变量,每次函数被调用时,这个变量的值会保留,不会因为函数调用的结束而丢失,就像一个临时的局部存储一样。其次,在模块级别(即函数体外部),静态变量具有一定的全局性。它们可以被模块内...

c语言static(静态变量、静态函数、静态全局变量)
在C语言中,static是一个非常重要的关键字,它可以用于定义静态变量、静态函数以及静态全局变量。静态变量、静态函数和静态全局变量的作用域和生命周期与普通变量、函数和全局变量有所不同,使用它们可以帮助我们更好地管理程序的状态和数据。静态变量 静态变量是指在函数内部或者块内部定义的变量,但是它的...

相似回答