static的作用

时间:2024-12-13 13:00:04编辑:花茶君

C语言中static是做什么用的?

有两种用法:1、static修饰局部变量,成为一个局部静态变量。static修饰局部变量(静态局部变量)与普通局部变量相比,它的优势在于:①静态局部变量作用域与连接属性与普通局部变量一样;②存储类:静态局部变量分配在data/bss段,普通局部变量在栈上;③生命周期:因为存储类的不同,静态局部变量的生命周期得到延长了,直到程序结束。2、static修饰全局变量与函数,成为静态全局变量与静态函数。static修饰全局变量\函数 与 普通全局变量\普通函数相比,它的优势在于:①存储类、生命周期、作用域都一样;②差别在于static修饰全局变量\函数连接属性是内连接,普通全局变量\普通函数是外链接;③就是说static修饰全局变量\函数不能跨文件访问调用。扩展资料:在类内数据成员的声明前加上static关键字,该数据成员就是类内的静态数据成员。其特点如下:静态数据成员存储在全局数据区,静态数据成员在定义时分配存储空间,所以不能在类声明中定义静态数据成员是类的成员,无论定义了多少个类的对象,静态数据成员的拷贝只有一个,且对该类的所有对象可见。也就是说任一对象都可以对静态数据成员进行操作。而对于非静态数据成员,每个对象都有自己的一份拷贝。由于上面的原因,静态数据成员不属于任何对象,在没有类的实例时其作用域就可见,在没有任何对象时,就可以进行操作和普通数据成员一样,静态数据成员也遵从public, protected, private访问规则静态数据成员的初始化格式:::=类的静态数据成员有两种访问方式:. 或 ::

static函数的作用是

1、修饰函数的局部变量; 2、修饰全局函数和全局变量; 3、修饰类里面的成员变量; 4、修饰类的成员函数 扩展资料   static作用:   1、修饰函数的局部变量:   特点:有默认值0,只执行一次,运行一开始就开辟了内存,内存放在全局   2、修饰全局函数和全局变量:   特点:只能在本源文件使用   3、修饰类里面的成员变量:   特点:和1差不多,定义多个static y,但只有一个y,不进入类的大小计算,不依赖于类对象的存在而存在(可直接调用,要进行外置声明)   4、修饰类的成员函数:   特点:f():括号里无this指针,只能调用他的'本类静态函数和他的静态变量,即是用static修饰过的不依赖于类对象的存在而存在(可不进行外置声明,直接调用)

static关键字的作用

static关键字的作用如下:1、修饰变量静态全局变量:全局变量前加static修饰,该变量就成为了静态全局变量。我们知道,全部变量在整个工程都可以被访问,而在添加了static关键字之后,这个变量就只能在本文件内被访问了。因此,在这里,static的作用就是限定作用域。静态局部变量:局不变量添加了static修饰之后,该变量就成为了静态局部变量。我们知道局部变量在离开了被定义的函数后,就会被销毁,而当使用static修饰之后,它的作用域就一直到整个程序结束。因此,在这里static的作用就是限定生命周期。2、修饰函数修饰函数则该函数成为静态函数,函数的作用域仅限于本文件,而不能被其它文件调用。c语言介绍C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

static关键字的作用是什么

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。(1)设置变量的存储域,函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值;(2)限制变量的作用域,在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;(3)限制函数的作用域,在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内;(4)在类中的static成员变量意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见;(5)在类中的static成员函数属于整个类所拥有,这个函数不接收this指针,因而只能访问类的static成员变量。声明为static的变量实质上就是全局变量。声明为static的方法有以下几条限制:它们仅能调用其他的static 方法。它们只能访问static数据。它们不能以任何方式引用this 或super。

static关键字的作用是什么?

static作用:1、修饰函数的局部变量:特点:有默认值0,只执行一次,运行一开始就开辟了内存,内存放在全局2、修饰全局函数和全局变量:特点:只能在本源文件使用3、修饰类里面的成员变量:特点:和1差不多,定义多个static y,但只有一个y,不进入类的大小计算,不依赖于类对象的存在而存在(可直接调用,要进行外置声明)声明为static的变量称为静态变量或类变量。可以直接通过类名引用静态变量,也可以通过实例名来引用静态变量,但最好采用前者,因为后者容易混淆静态变量和一般变量。静态变量是跟类相关联的,类的所有实例共同拥有一个静态变量。声明为static的方法称为静态方法或类方法。静态方法可以直接调用静态方法,访问静态变量,但是不能直接访问实例变量和实例方法。静态方法中不能使用this关键字,因为静态方法不属于任何一个实例。以上内容参考:百度百科-static

上一篇:混战

下一篇:没有了