🥰目录
🎉 学习的内容
🎉 作用域
🎉 代码
🎉 生命周期
🎉 代码
😈 extern
概述🥰这篇文章主要讲述的是何为 作用域 和 生命周期,以及带大家理解它的概念。当然,作用域也是会包含两个重要的概念的。一个是局部变量、还有一个是全局变量,可以说这篇文章内容还是对于前期学习的朋友是非常重要的。因为,在今后的学习当中它可以为你学习打下坚实的基础。
说明🧑💻如果要按照官方点的说法的话,作用域(scope)是程序的设计概念,通常来说的话,一段程序当中的代码的"名字"并不总是有效或者说是可用的。但是,博主觉得没必要这样去理解。因为,这样可能对于新手来说并不是友好的。直接用最简单最通俗的话语给大家讲解下:变量的作用域在哪里使用,哪里就是变量的作用域。配合相关知识点去打代码的话你的理解也会越深的。
示例👉代码如下所示👇
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
// 1.作用域:变量的作用域在哪里使用,哪里就是变量的作用域。
extern void Scope_varible();
int main(void)
{
Scope_varible(); // 变量的作用域
return 0;
}
void Scope_varible()
{
int a = 10; // 'a->'是在这个范围的,此时都可以被打印。因为它的作用域是在函数的大括号里面。
#if 0
{
int a = 10; // 'a->'是在这个范围内申请的,出了这个范围'a'就无效了,因为它的这个作用域只是在这个'a'的大括号里面并不在这个函数里面。
printf("在变量作用域范围%d\n", a);
}
printf("不在变量作用域范围%d\n", a); // 'a'->未声明标识符。
#endif
}
说明🙌在上述代码是关于作用域的代码说明,也标明了注释,去多多理解它。
说明🧑💻生命周期指的是变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。
示例👉代码如下所示👇
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int g_test = 1; //整个程序的生命周期。
// 2.生命周期:变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。
extern void Globaland_local();
int main(void)
{
Scope_varible(); // 变量的作用域
return 0;
}
void Globaland_local()
{
int i = 2; //进入函数{}作用域周期开始,出函数{}作用域生命周期结束。
printf("全局变量g_test=%d\n", g_test);
printf("局部变量i =%d\n", i);
}
运行结果📑
全局变量g_test=1
局部变量i =2
说明🙌在上述代码是关于生命周期的代码说明,配合代码上手,去多多理解它。
说明🙌由于博主之前写过一篇过于 **extern** 关键字,这里就不再过多描述了。