为了账号安全,请及时绑定邮箱和手机立即绑定

【养成记】嵌入式挑战第8天,第二周第四讲-全局变量、局部变量、静态局部变量

标签:
C C++ 嵌入式

【养成记】嵌入式挑战第8天,第二周第四讲-全局变量、局部变量、静态局部变量

课程章节

物联网/嵌入式工程师 第二周第四讲 1-3 全局变量、局部变量、静态局部变量

课程内容

对C语言中的全局变量、局部变量、静态局部变量做了介绍

学习笔记

1. 概述

任何编程语言中都有变量,这节我们来先来看看全局变量、局部变量、静态变量

2. 全局变量

2.1 概述

在函数外部定义的变量,我们叫做全局变量.

特点:
(1) 在本文件中的任何函数中都可以使用。-----作用域
(2) 在定义变量的时候,系统会申请内存空间,当main()函数结束的时候,
系统会回收全局变量对应的内存空间. -----生命周期
(3) 全局变量未初始化,值默认为0

2.2 代码演示

//
// Created by au on 2022/9/12.
//
#include <stdio.h>

int global_data = 0;

void global_calc(){
    printf("请输入一个整数:");
    scanf("%d", &global_data);

    printf("在1-%d之间,左右可以被7整除的数有:");
    for (int i = 1; i <= global_data; ++i) {
        if (i % 7 == 0) {
            printf("%d ", i);
        }
    }
}

/**
 *定义全局变量 global_data = 0;
设计无参数的函数global_calc(),在这个函数内部要求用户从键盘输入一个数据赋值给global_data,
然后要求 该函数输出,从1~global_data之间所有能被7整除的数据。

main函数来调⽤以下global_data这个函数。
 * @return
 */
int main()
{
    global_calc();
    return 0;
}

运行结果

请输入一个整数:28
在1-1之间,左右可以被7整除的数有:7 14 21 28

3. 局部变量

3.1 概述

在函数内部定义的变量,我们叫做局部变量。

特点:
(1) 只能在定义它的那个函数内部使用,其他位置不能使用。----作用域
(2) 调用函数时,运行在定义变量代码的时候,系统会申请内存空间, 当定义该变量的函数调用结束后,
系统会回收局部变量对应的内存空间. -----生命周期
(3) 局部变量未初始化,值默认为随机值。

3.2 代码示例

图片描述

4. 静态局部变量

4.1 概述

 格式:
   static  数据类型 变量名;
   
   static int c;

特点:
(1)静态局部变量,可以改变原来变量的生命周期,当定义该变量的函数调用结束后,
系统不会回收对应的内存空间,当main()函数结束后, 内存空间才会被回收.
(2)只能在定义它的那个函数内部使用,其他位置不能使用。----作用域
(3)静态局部变量未初始化,值默认为0

4.2 代码示例

图片描述

课程评价

对C语言中的变量有了更深的了解,掌握他们的初始化,生命周期对将来在项目中的灵活应用大有裨益。

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消