C零基础视频-44-静态局部变量、静态全局变量、静态函数

学长分享:计算机专业大一学生如何学习C语言?如何自学C语言?大学C语言学习视频教程谁有? 学长分享:计算机专业大一学生如何学习C语言?如何自学C语言?大学C语言学习视频教程谁有? 针对于我个人的经历,简单谈谈大一应该怎么学习计算机这个方向的课程,其实在大一来说计算机方面的专业课还是比较少,大多数都是高等数学,大学语文,英文,线代等等吧这些课程,当在计算机专业的课程中基本上在大一都会开设一门编程语言课程,C语言编程或者java面向对象编程。 在大一中你要在保障不挂科的情况下,把这门语... 阅读详情


视频地址: https://www.bilibili.com/video/av73896536

static关键字

C语言中的static关键字,有多种用于,它可以用来修饰局部变量、全局变量和函数,分别得到静态局部变量、静态全局变量和静态函数。

静态局部变量

使用static修饰局部变量,就得到静态局部变量

static int nValue = 0;

静态局部变量的特点:

  • 只初始化一次
  • 仅在定义的函数内可以使用
void FunTest()
{
    static int nValue = 0;
    nValue++;
    printf("nValue:%d\r\n", nValue);
}


int main(){
    FunTest();
    FunTest();
    FunTest(); 
    FunTest();
    FunTest();
    return 0;
}

静态局部变量既像全局变量那样,可以在多次函数调用中传递信息,又限制了只能是某一个函数访问,避免了滥用全局变量造成的变量混乱。

静态全局变量

如果使用static修饰全局变量,就得到静态全局变量。在同一个文件中,静态全局变量与全局变量没有区别,均可以被多个函数访问、修改:

static int nValue = 0;

void FunTest1()
{
    nValue++;
    printf("nValue:%d\r\n", nValue);
}

void FunTest2()
{
    nValue *= 100;
    printf("nValue:%d\r\n", nValue);
}


int main(){
    FunTest1();
    FunTest2();
    return 0;
}

与全局变量不同之处在于,静态全局变量只能被当前c文件的函数访问。静态全局变量可以看作是被限制了作用域的全局变量。

静态函数

使用static修饰函数,就得到了静态函数,静态函数只能被当前c文件中的函数调用。

视频开发方向从入门到商业落地详细学习线路 本学习线路专为大学生设计,以“C/C++为根基、FFmpeg为核心工具”,从基础理论到工程实践再到商业落地,分三阶段递进,兼顾知识系统性与实战导向,全程抛开具体应用框架,聚焦音视频开发核心能力构建。 阅读详情

相关推荐

C语言基础20天入门-索引

文章目录开发环境VS下载C语言0基础20天入门 开发环境VS下载 Visual Studio 链接:https://pan.baidu.com/s/11NucnL9M7qXohXEhewHgLg 提取码:4qyy C语言0基础20天入门 C零基础课程-01-从C程序到可执行文件的过程 笔记:https://blog.csdn.net/LittleLeapFrog/article/details...

LittleLeapFrog的博客 2675

C语言基础入门48篇_44_静态局部变量静态全局变量静态函数(静态局部变量只被初始化一次,保留变量值、静态全局变量是加了作用域的全局变量静态函数亦是加了作用域的函数)

静态局部变量静态全局变量静态函数(静态局部变量只被初始化一次,保留变量值、静态全局变量是加了作用域的全局变量静态函数亦是加了作用域的函数)

分享学习成长历程,Winter is coming! 2652

C零基础课程-08-数值型变量的定义与使用

文章目录强类型语言与弱类型语言关键字:与编译器沟通的桥梁定义变量C语言中整型数值的表示方法浮点变量整型相关知识的扩充浮点相关知识的扩充 视频地址:https://www.bilibili.com/video/av73897402 强类型语言与弱类型语言 C语言,是强类型的语言,对于每一个变量都有强制类型定义的要求。 而弱类型语言(如Python、Javascript)中,变量的类型不需要声明,程序...

LittleLeapFrog的博客 2567

视频教程-《信息学竞赛-C语言》 DAY44-清华尹成老师-C/C++

《信息学竞赛-C语言》 DAY44-清华尹成老师 毕业于清华大学,曾担任Go...

weixin_32147559的博客 146

《从0到1:C/C++音视频开发自学指南》

自学 C/C++ 音视频开发是一段充满挑战与机遇的旅程 。通过扎实掌握 C/C++ 语言基础和丰富的音视频基础概念,精心搭建合适的开发环境,积极投入实战学习,深入钻研进阶知识与技巧,并充分利用各类学习资源,我们能够逐步构建起完整的知识体系,掌握音视频开发的核心技能 。

zheng_ruiguo的专栏 1554

c语言二级考试51自学网,2016年最新计算机二级c语言视频教程

C/C++当前位置:主页 > 编程教程 > C/C++ > 2016年最新计算机二级c语言视频教程2016年最新计算机二级c语言视频教程教程大小:3.76GB 发布时间:2016-04-14   下载次数:次本套2016年最新计算机二级c语言视频教程将近100课时左右,是一套比较全面的C语言教程,零基础讲解,让您从零开始学习,学习贵在坚持,屌丝建站教程自学网祝您在学习的道路上...

weixin_35059431的博客 203

视频教程-从新手小白入门MFC框架视频精讲-C/C++

从新手小白入门MFC框架视频精讲 黄强老师,国家软件设计师,软件开发工程师,...

weixin_30445939的博客 953

c语言编程入门教程网易,C语言入门视频教程汇总,看了无师自通

互联网已经进入深水区,随着人口老龄化的到来,社会也需要大量智能化产业的发展。而物联网的价值不但链接了物和人,而是会在链接的基础上,实现系统化、数据化、智能化,进而带来全产业链的变革。万物互联时代,你确定不及时掌握一门过硬的物联网技术,为未来就业开拓更多的“薪”机会!为了助力零基础小伙伴更好的入门学习物联网技术,今天千锋小编为大家准备了嵌入式高级C语言入门必学内容!!简介主要讲解了c语言数据与程序架...

weixin_39790877的博客 170

Tiny4412开发板上流水灯的C语言实现

TINY4412开发板是一个集成了S3C44B0X微处理器的嵌入式学习平台。它被设计用于支持多种应用场景,如物联网(IoT)设备、嵌入式系统的原型设计和教学等。具备丰富的接口和性能,能够实现从基础到复杂项目的开发。嵌入式编程通常指的是为特定的嵌入式系统编写软件的过程,这些系统往往具有资源有限、与硬件紧密集成、实时性要求高等特点。嵌入式系统广泛应用于工业控制、消费电子、汽车电子等领域。由于其应用环境的多样性和特殊性,嵌入式编程需要考虑到硬件资源的限制,通常需要对内存、CPU处理能力等进行细致的管理。

weixin_35886636的博客 981

C零基础课程-13-关系运算符与关系表达式

文章目录C语言中的关系运算符“==”与“!=”“>”与“<”“>=”与“<=”关系表达式的值初学者常见bug:错写“==”为“=” 视频地址:https://www.bilibili.com/video/av73897727 C语言中的关系运算符 C语言中的关系运算符有等于、不等于、大于、小于、小于等于、大于等于。他们可以直接用于整型、浮点基本数据类型及指针类型变量的比较。...

LittleLeapFrog的博客 2485

C零基础课程-14-逻辑运算符

文章目录C语言中的逻辑运算符逻辑与运算符“&&”逻辑或运算符“||”逻辑非运算符“!”逻辑运算符的短路特点 C语言中的逻辑运算符 C语言中的逻辑运算符有“&&”、“||”、及“!”,他们分别被称为逻辑与、逻辑或、逻辑非。 前两者是二元运算符,逻辑非是一元运算符。 逻辑与运算符“&&” 逻辑与运算符的基本语法是: 表达式1 && 表达式...

LittleLeapFrog的博客 1408

C零基础课程-09-文字数据的定义和使用

文章目录什么是文字数据(单个字符与字符串)ASCII码表字符串字符定义的几种方式ASCII码的扩展与转义字符转义字符 视频地址:https://www.bilibili.com/video/av73897450 什么是文字数据(单个字符与字符串) 之前课程中学习了数值型变量如何定义与使用,可以用于存放整数、小数。 C语言中的文字型数据,可以存放文字(如字母、标点符号)。 C语言中文字数据分为单个字...

LittleLeapFrog的博客 751

C零基础课程-22-标准库函数在Windows及Linux下的查询与使用

文章目录什么是C标准库函数Windows下的MSDNLinux下的Manual Page 视频地址:https://www.bilibili.com/video/av73224259 什么是C标准库函数 C标准除了约定了C语言的语法规范外,还规定了一些常见功能的接口,如输入、输出、数学计算、文件操作等。他们集合在一起,就是C标准库函数。 我们已经使用过的printf、scanf等就来自标准库函数。...

LittleLeapFrog的博客 637

C零基础课程-11-sizeof运算符

文章目录求字节数运算符sizeof各个基本数据类型在内存中的大小对变量求字节数应用实例 视频地址:https://www.bilibili.com/video/av73897557 求字节数运算符sizeof sizeof是求字节数运算符,其基本使用方法是:sizeof(n),n可以为变量本身,也可以为变量类型。 sizeof(n)将在编译时被替换为n在内存中占用的字节数。 各个基本数据类型在内存...

LittleLeapFrog的博客 614

C零基础视频-48-文件的写入与读取

文章目录fread与fwrite 视频地址:https://www.bilibili.com/video/av73896847 fread与fwrite 从信息的转换角度看,文件的读取与写入,其实就是信息在文件介质(磁盘)与内存之间进行转换。 文件读取(fread),就是将磁盘中的文件内容,读取进内存中;而文件写入(fwrite),就是将内存中的内容,写入到磁盘中。 那么他们就会面临几个关键问题:...

LittleLeapFrog的博客 602

C零基础视频-26-身份证号校验程序

文章目录第二代身份证号的组成校验算法各位权重校验码表程序代码 视频地址:https://www.bilibili.com/video/av73224851 第二代身份证号的组成 第二代身份证号为18位,各位数字对应了不同的信息(以下顺序从左往右): AABBCCYYYYMMDDXXXV AA BB CC YYYY MM DD XXX V 2 2 2 4 2 2 3 1 省 市 ...

LittleLeapFrog的博客 558

C零基础课程-03-VS的入门使用及设置

文章目录如何创建一个工程默认工程的结构VS相比普通编辑器的各种优点代码补全显示行号快捷键设置将VS设置为兼容C89标准预编译头使用不安全的函数测试运行 如何创建一个工程 点击菜单栏中的“文件/新建/项目”,在弹出的对话框中,选择“Win32控制台程序”,设置好功成名及路径后,点击确认。 在接下来的对话框中,选择“完成”即可。 默认工程的结构 默认代码(一般可能非标准) 解决方案资源管理器(可以通...

LittleLeapFrog的博客 500

C零基础课程-17-while循环

文章目录什么是循环while循环使用循环打印1到5使用循环计算自然数前n项和 什么是循环 在编程中,某些解决方案可能具有规律性的重复操作。比如,算自然数1至5的总和。 1+2+3+4+5=151+2+3+4+5 = 151+2+3+4+5=15 如果手算,我们可能会利用等差数列求和公式: S5=(1+5)×52=15S_5 = \frac{(1+5)\times 5}{2} = 15S5​=2(1...

LittleLeapFrog的博客 484
上一篇: C零基础视频-43-枚举
下一篇: C零基础视频-45-内存的分区:全局区、栈区、堆
玄马科技
博客等级 码龄7年 57粉丝 55原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值