static关键字在编程中有什么特殊含义或用途?

2026-04-10 09:120阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计781个文字,预计阅读时间需要4分钟。

static关键字在编程中有什么特殊含义或用途?

前言:在C/C++学习中,我们将内存大致分为三个区域。1. 栈区:用于存放局部变量和函数参数。临时变量通常也存储在栈区。2. 堆区:用于动态分配内存,如使用malloc、new等。3. 全局区:用于存放全局变量和静态变量。栈区变量特点:进入作用域创建,退出作用域自动销毁。

前言:

在C/C++学习时,我们把内存大概分为3个区域。

static关键字在编程中有什么特殊含义或用途?

1、栈区

用来存放局部变量和形式参数。临时作用的变量都是在栈区。

栈区上变量的特点:进入作用域创建,出作用域自动销毁(将内存返回操作系统)

2、堆区

用于动态内存的分配。

malloc,calloc,realloc,free

3、静态区

用于全局变量,实际参数,静态变量

静态区变量的特点:创建好后,直到程序结束后才销毁。

引言:

static关键字修饰局部变量,全局变量,函数时有不同的作用。

一、修饰局部变量:

效果:使局部变量的生命周期变长,直到程序结束才销毁。

举例:

此时a是一个局部变量,原先局部变量的生命周期是进入作用域开始,出作用域就销毁。因此本题的输出结果就是全2,因为每次进入局部变量a的函数test里面,就需要重新创建一个,而出函数test()a就自动销毁。

阅读全文

本文共计781个文字,预计阅读时间需要4分钟。

static关键字在编程中有什么特殊含义或用途?

前言:在C/C++学习中,我们将内存大致分为三个区域。1. 栈区:用于存放局部变量和函数参数。临时变量通常也存储在栈区。2. 堆区:用于动态分配内存,如使用malloc、new等。3. 全局区:用于存放全局变量和静态变量。栈区变量特点:进入作用域创建,退出作用域自动销毁。

前言:

在C/C++学习时,我们把内存大概分为3个区域。

static关键字在编程中有什么特殊含义或用途?

1、栈区

用来存放局部变量和形式参数。临时作用的变量都是在栈区。

栈区上变量的特点:进入作用域创建,出作用域自动销毁(将内存返回操作系统)

2、堆区

用于动态内存的分配。

malloc,calloc,realloc,free

3、静态区

用于全局变量,实际参数,静态变量

静态区变量的特点:创建好后,直到程序结束后才销毁。

引言:

static关键字修饰局部变量,全局变量,函数时有不同的作用。

一、修饰局部变量:

效果:使局部变量的生命周期变长,直到程序结束才销毁。

举例:

此时a是一个局部变量,原先局部变量的生命周期是进入作用域开始,出作用域就销毁。因此本题的输出结果就是全2,因为每次进入局部变量a的函数test里面,就需要重新创建一个,而出函数test()a就自动销毁。

阅读全文