1、全局变量前的static作用:限制该全局变量的作用域到本文件结束。

例如:下面3个文件,f1.cpp中的全局变量只能在f1.cpp中使用;f2.cpp使用的是f3.cpp中定义的全局变量a。

//文件f1.cpp

#include "stdio.h"

static int a=1;//限定a的作用域:从这里到本文件结束

void f2();

void f3();

void main()

{

printf("f1中的a=%d\n",a);

f2();

f3();

}

//文件f2.cpp

#include

extern int a;//使用外部全局变量a,即f3.cpp中的全局变量a

void f2()

{

printf("f2中的a=%d\n",a);

}

//文件f3.cpp

#include

int a=3;

void f3()

{

printf("f3中的a=%d\n",a);

}

运行结果:

f1中的a=1

f2中的a=3

f3中的a=3

2、局部变量前的static:定义了静态局部变量,该语句只执行一次,以后使用上一次的结果。

#include "stdio.h"

void f(int b)

{

static int a=b;

printf("a=%d\n",a);

a++;

}

void main()

{

int m=5;

printf("ok1\n");

f(m);

printf("ok2\n");

f(m);

} 运行结果: ok1 a=5 ok2 a=6

C语言F2的作用,c语言static的作用相关推荐

  1. java中静态变量的作用_Java中static变量作用和用法详解

    static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static ...

  2. C语言中static的作用及C语言中使用静态函数有何好处

    转自:http://www.jb51.net/article/74830.htm 在C语言中,static的作用有三条:一是隐藏功能,二是保持持久性功能,三是默认初始化为0. 在C语言中,static ...

  3. c语言staticint的作用,C语言 static 声明静态变量?大佬原来用它干这事!

    原标题:C语言 static 声明静态变量?大佬原来用它干这事! C语言可变参数只会用算啥本事?看我来抽丝剥茧干翻它! 高手在写代码的时候,会特别注重的一点就是,对外的方法对外,不对外的方法和数据,都 ...

  4. 搞不定的C语言--static的作用

    在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条. (1)先来介绍它的第一条也是最重要的一条:隐藏. 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有 ...

  5. C语言static关键字的作用(有三个作用)

    1.具有隐藏的作用 当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性. a.c: char a = 'A'; // global variable void msg() ...

  6. 根据作用C语言关键字分为,C语言 关键字

    关键字就是已被C语言本身使用,不能作其它用途使用的字.例如关键字不能用作变量名.函数名等 由ANSI标准定义的C语言关键字共32个. 根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两 ...

  7. C语言初阶-C语言中static的用法

    目录 前言 1.static的定义 2.static修饰局部变量 2.static修饰全局变量 3.static修饰函数 总结: 前言 哈喽,大家好,我是大鹏,目前是一名大二的学生,今天给大家带来的是 ...

  8. c语言的应用与作用,C语言主要应用在什么地方?

    C语言是一种计算机程序设计语言.它既有高级语言的特点,又具有汇编语言的特点.它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序.因此,它的应用范围 ...

  9. c语言里的%p的作用,c语言中 %p的含义

    格式控制符"%p"中的p是pointer(指针)的缩写.指针的值是语言实现(编译程序)相关的,但几乎所有实现中,指针的值都是一个表示地址空间中某个存储器单元的整数.printf函数 ...

  10. c语言程序头文件作用,C语言头文件

    C语言头文件教程 C 语言的头文件一般都是 .h 做为结尾的. C语言头文件详解 语法 #include 参数 参数 描述 filename 我们需要引入的头文件的名称. 说明 C 语言的头文件一般都 ...

最新文章

  1. R语言dataframe合并函数merge实战
  2. multipart/form-data和application/x-www-form-urlencoded的区别
  3. 微信小程序的多选改变样式_微信小程序radio的样式修改
  4. 软件架构设计_软件架构设计的三个维度,软件架构师需要知道的点,了解一下吧...
  5. 《天天数学》连载42:二月十一日
  6. 二分图判定(涂色问题)
  7. geotrellis使用(七)记录一次惨痛的bug调试经历以及求DEM坡度实践
  8. php 行 excel表格,PHP电子表格-无法查看Excel文件
  9. 联想主板9针开关接线图_干货丨34个电气控制接线图、电子元件工作原理图
  10. PCIE标准共享,以及其机械尺寸图
  11. 在开放环境的步态识别:一个基准(二)
  12. c语言看门狗的作用,看门狗定时器工作原理及作用
  13. 关于计算机设计的英语作文,计算机专业设计英文参考文献 计算机专业设计专著类参考文献有哪些...
  14. 6-1 另类循环队列 (30 分) 如果用一个循环数组表示队列,并且只设队列头指针Front,不设尾指针Rear,而是另设Count记录队列中元素个数。请编写算法实现队列的入队和出队操作。
  15. 外挂制作--------过NP技术渐渐
  16. Qt图片绘图类QPixmap、QImage、QPicture
  17. 【Torch API】pytorch 中torch.ones_like和torch.zeros_like函数详解
  18. TUANDUIZUOYE
  19. 嫡权法赋权法_变异系数法_客观赋权法
  20. Linux内核实时监控键盘输入

热门文章

  1. matlab已知三点求夹角,已知3点如何求其中两点对第3点的夹角
  2. 基于属性的权限控制模型ABAC
  3. More than 4094 XFs (styles)
  4. 手机恢复出厂设置命令_华为手机双清和恢复出厂设置区别 recovery恢复出厂设置步骤...
  5. pac for linux,Ubuntu下安装PAC Manager 4.5.3.9
  6. 令人细思极恐的小故事_“&”号的令人惊讶的故事
  7. 安卓打开cbr文件_什么是CBR和CBZ文件,为什么将它们用于漫画?
  8. 洛谷P3004 宝箱Treasure Chest——DP
  9. 深度学习前沿算法思想
  10. aspnet core 3.1 Kestrel Protocols Http1AndHttp2