首页 > 其他分享 >变量与作用域

变量与作用域

时间:2024-07-26 14:51:36浏览次数:7  
标签:const 变量 作用域 int extern 声明 定义

int global =100;//外部链接,所有文件皆可访问。
static int one_file=50;//内部链接,static关键字,单文件可以使用
void function2(){
  static int count=0;//无连接,函数内部使用。静态变量。
}
//上述三种变量作用时间是程序执行开始到结束。所有静态变量不初始化都会被设定为0

2.定义声明与引用声明。定义声明会使系统为变量分配内存空间。引用声明使用extern关键字,声明变量放在另外的文件中,不分配内存空间。
但引用声明不能初始化否则就是定义声明了。
double up;//定义声明,值为0
extern int blem;//blem变量在另外的文件中定义
extern char gr='z';//对gr进行了初始化,变成了定义声明

3.应用实例
//file1.cpp
extern int cats=20;//定义申明
int dogs=22;//定义申明
int fleas;//定义声明

//file2.cpp
extern int cats;//引用声明
extern ing dogs;//引用声明
//file3.cpp
extern int cats;//引用声明
extern int dogs;//引用声明
extern int fleas;//引用声明
4.thread_local 本地线程变量
mutable //可更改的。可以更改const修饰的变量
volatile//易变的。用于编译器优化。可能会将变量放入寄存器中。
例:
struct data{
  char name[30];
  mutable int accesses;
};
const data veep={"Hello",0};
strcpy(veep.name,"Lily");//不合法 const修饰。
veep.accesses++;//合法mutable 修饰
5.const修饰
//file1.cpp
  const int fingers=10;//视为static const int fingers=10;
//file2.cpp
extern const int fingers;//外部链接常数,不能被赋值,只能使用。(和申明结合)

ex:最好将Const修饰的变量放入头文件中。
extern const int states=50;//外部常变量申明

标签:const,变量,作用域,int,extern,声明,定义
From: https://www.cnblogs.com/zhongta/p/18325342

相关文章

  • 变量
     一、变量的概念内存中的一个存储区域,该区域的数据可以在同一类型范围内不断变化,变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值。二、变量的作用用于在内存中保存数据。Java中每个变量必须先声明,后使用。使用变量名来访问这块区域的数据。变......
  • CH32V系列MCU:关于将“变量”放在FLASH某一位置方法
    以CH32V307为例,配置方法如下: 关于给定义的变量赋值,注意要通过FLASH编程操作写入,将值写入FLASH该位置。完成后可直接通过读取该变量获取该值。如下图: 配置代码如下:/**********************************(C)COPYRIGHT********************************FileName......
  • Linux安装JDK及配置环境变量
    一、JDK下载JDK下载地址:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html二、Linux安装JDK及配置环境变量1、创建JDK的安装目录如果linux系统没有安装解压工具,可以将解压后的jdk上传到指定目录,我这里是将解压后的jdk1.8.0_161目录上传到指定......
  • Springboot配置文件的变量在代码中读取
    要将路径值存储在application.yml文件中并在Java代码中读取,可以使用@Value注解来注入这个值。1.在application.yml中定义变量首先,在application.yml文件中定义你的路径变量,例如:custom:geoPackagePath:static/route_net/marnet_plus_5km.gpkg2.使用@Value注......
  • java环境变量的配置
    1.path环境变量配置的作用程序的执行需要使用外部指令javac,但是javac指令仅仅能在JDK安装目录下的bin目录下时候,因此程序只能写入bin目录程序开发过程中,不能将源代码写入JDK的安装目录,因此需要将源程序保存到任意位置的指定目录(英文目录),所以需要使javac指令在任意目录下可以运......
  • Django 在哪里存储模型级变量
    所以我有我的模型:fromdjango.dbimportmodelsx_default_coordinate=0y_default_coordinate=0classModel(models.Model):location1=gis_models.PointField(srid=4326,default=Point(x_default_coordinate,y_default_coordinate))location2......
  • 变量的定义、分类和使用的实例代码
    目录什么是变量变量的定义格式:变量的分类类变量和成员变量的区别什么是变量定义:在程序执行的过程中,有可能发生改变的值(可以简单理解为用来存储数据的盒子)变量的定义格式:数据类型变量名=数据值;inta=2;//这就是变量a的定义语句,赋初始值2变量的分类java中主要有:局......
  • 7:Python 变量类型
    Python 变量类型变量是存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。变量赋值Python中的变量赋值不需要......
  • 点击内置变量,在文本框中插入,按下退回键或者删除键删除变量
    效果:代码:  //点击变量添加 consthandleTagClick=(param:any)=>{  constinput:any=inputRef.current.input;  if(input){   conststartPos=input.selectionStart;   constendPos=input.selectionEnd;   con......
  • Python - 如何使用存储在类变量中的类型作为同一类方法的参数的类型提示?
    考虑下面的代码:fromtypingimportProtocol,ClassVar,AnyclassTool(Protocol):t:ClassVar#deff(self,params:self.t)->Any:#NameError:name'self'isnotdefineddeff(self,params)->Any:passclassSum:......