07-06全局变量和常量

07-06全局变量和常量https://www.bilibili.com/video/BV1J94y127bJ/?spm_id_from=pageDriver&vd_source=8f1dc2f3e622d11dea987bb17c46c472

一、全局变量

#incldue void func(void) { }

int num1=88;//全局变量,在任何函数的外面。

int main(void) { int num=666;// 局部变量,在某一个函数的里面。 return 0; }

A全局变量可以在所用的函数里面使用。

B局部变量的存储期是自动存储期,全局变量的存储期是在静态存储期。

C静态存储期的变量的性质

c1都是执行主函数之前创建.

c2在主函数执行完毕之后销毁释放

c3静态存储期的变量如果没有初始化,默认初始值是0

一些问题

int num=0;

int main(void)

{

int num =666;

num=234;

return 0;

}

局部同名变量 会屏蔽 全局同名变量。

建议尽量使用局部变量,避免全局变量的使用。


全局变量(Global Variable)和局部变量(Local Variable)是两种不同作用域的变量。

全局变量: 定义在函数外部或者在任何函数内部之前的变量。

全局变量的作用域是整个程序,可以在程序的任何地方访问。

全局变量在程序启动时创建,在程序结束时销毁。

全局变量可以被程序中的所有函数访问和修改,也可以被其他文件中的代码访问(需要使用extern关键字进行声明)。

全局变量可以在任何函数内部使用,但需要使用extern关键字声明全局变量的存在

————————————————

局部变量: 定义在函数内部或者代码块内部的变量。

局部变量的作用域仅限于所在的函数或代码块内部,只能在其所在的作用域内访问。

局部变量在其所在的函数或代码块被调用时创建,在函数或代码块执行完毕后被销毁。

局部变量只能在定义它的函数或代码块内部使用,其他函数或代码块无法访问。

局部变量的作用域可以是函数内部的整个范围,也可以是代码块内部的特定范围。

————————————————

全局变量和局部变量的使用场景: 全局变量可以用于存储需要在整个程序中使用的共享数据。

局部变量可以用于存储仅在特定函数或代码块中使用的临时数据,有助于提高代码的可读性和维护性,并避免命名冲突。

需要注意的是,全局变量和局部变量的命名应当遵循一定的命名规范,以提高代码的可读性和理解性。另外,过度使用全局变量可能导致程序的可维护性和可测试性下降,应当慎重使用全局变量

———————————————— 原文链接:https://blog.csdn.net/weixin_42492218/article/details/131468866

extern 和 static (1) extern 表明该变量在别的地方已经定义过了,在这里要使用那个变量. (2) static 表示静态的变量,分配内存的时候, 存储在静态区,不存储在栈上面. static 作用范围是内部连接的关系, 和extern有点相反.它和对象本身是分开存储的,extern也是分开存储的,但是extern可以被其他的对象用extern 引用,而static 不可以,只允许对象本身用它. 具体差别首先,static与extern是一对“水火不容”的家伙,也就是说extern和static不能同时修饰一个变量;其次,static修饰的全局变量声明与定义同时进行 ———————————————— 版权声明:本文为CSDN博主「ldxFashion」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/m0_49416708/article/details/109728154


常量--不能修改的变量。

const int num=666;//int const num=666; num=88//会报错。必须初始化

新文件夹
JSRUN前端笔记, 是针对前端工程师开放的一个笔记分享平台,是前端工程师记录重点、分享经验的一个笔记本。JSRUN前端采用的 MarkDown 语法 (极客专用语法), 这里属于IT工程师。