zoukankan      html  css  js  c++  java
  • c++ static关键字的作用

    1、被申明的函数或值无法被其他源文件使用

    2.static的第二个作用是保持变量内容的持久。(static变量中的记忆功能和全局生存期)

    存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。共有两种变量存储在静态存储区:全局变量和static变量,只不过和全局变量比起来,static可以控制变量的可见范围,说到底static还是用来隐藏的。虽然这种用法不常见

    PS:如果作为static局部变量在函数内定义,它的生存期为整个源程序,但是其作用域仍与自动变量相同,只能在定义该变量的函数内使用该变量。退出该函数后, 尽管该变量还继续存在,但不能使用它。

    #include <stdio.h>
     
    int fun(){
        static int count = 10; //在第一次进入这个函数的时候,变量a被初始化为10!并接着自减1,以后每次进入该函数,a
        return count--; //就不会被再次初始化了,仅进行自减1的操作;在static发明前,要达到同样的功能,则只能使用全局变量:    
     
    }
     
    int count = 1;
     
    int main(void)
    {
         printf("global		local static
    ");
         for(; count <= 10; ++count)
                   printf("%d		%d
    ", count, fun());//局部变量statuc申明的变量和全局的不是同一个变量
         return 0;
    }

    3.static的第三个作用是默认初始化为0(static变量)

  • 相关阅读:
    消息中间件
    线程以及多线程
    锁以及分布式锁
    并发以及高并发
    SpringBoot + SpringCloud学习踩坑实记
    公众号笔记: 2018年12月
    浅谈final关键字的用法
    浅谈static关键字的四种用法
    Linux常用的一些命令
    HTTPS
  • 原文地址:https://www.cnblogs.com/long5683/p/11143517.html
Copyright © 2011-2022 走看看