• C语言笔记-函数-存储期和作用域


     1 #include <stdio.h>
     2 int a=0;
     3 /*a是文件作用域,所以fun可以调用它
     4 另外a有静态存储期,意味着程序不结束,它就一直存在.*/
     5 void fun(void)
     6 {
     7     static int b=0;
     8     /*b是块作用域.只能在fun函数内使用.
     9     b有static修饰,也有了静态存储期,意味着程序不结束,它就一直存在,不会随着fun函数的结束而销毁*/
    10     int c=0;
    11     /*c是块作用域,只能在fun函数内使用
    12     c有自动存储期,当fun函数运行时它被创立,此时要赋值,不然可能被初始化为垃圾值
    13     当fun函数运行到自己的}时候,c会被销毁.*/
    14     printf("%3d %3d %3d
    ",a++,b++,c++);
    15 }
    16 int main()
    17 {
    18     int i;
    19     puts("  a   b   c");
    20     puts("  ---------");
    21     for(i=0;i<10;i++)
    22     {
    23         fun();
    24     }
    25     puts("  ---------");
    26     return 0;
    27 }

    结果是:

      a   b   c
      ---------
      0   0   0
      1   1   0
      2   2   0
      3   3   0
      4   4   0
      5   5   0
      6   6   0
      7   7   0
      8   8   0
      9   9   0
      ---------
  • 相关阅读:
    google搜索的使用小窍门
    openssl的使用
    vi vim 的使用
    nfs
    setfacl命令的使用
    JAVA记录
    Yapi基本使用
    Yapi部署
    Mysql问题记录
    Spring boot+MYSQL多数据源
  • 原文地址:https://www.cnblogs.com/alpharobert/p/5349260.html
Copyright © 2020-2023  润新知