转载:https://blog.csdn.net/guotianqing/article/details/79828100

C语言&C++

1、局部变量

如果在一个函数内部定义了一个静态变量,只给它赋值一次,如果它没有初始值,默认初始值为0,第二次调用函数的时候就不在定义它(即只定义一次)。

静态局部变量的作用范围是函数的作用域内。

eg:

#include<stdio.h>
void f()
{
static int num=;
printf("%d ",num++);
}
int main(void)
{
int i,n=;
while(n--)
{
f();
}
return ;
}

运行结果:1 2 3

2、全局变量

如果定义在函数外面作为全局变量,编译器会对它初始化,

这个变量仅对当前文件可见,其他文件不可访问,但其他文件可以定义与它相同名称的变量(作用:避免冲突)

3、函数

(1)静态函数只在声明它的文件中可用,其他文件不可用

(2)不同的文件可以定义相同的静态文件名称,互相不影响。

面向对象:

1、静态数据成员:

(1)是全局变量,不能再类定义时声明

(2)静态数据成员是类的成员,对所有类的成员都可见

(3)遵从public,private,protect的规则

(4)访问方式:<类对象名>.<静态数据成员名> 或 <类类型名>::<静态数据成员名>

2、静态成员函数

(1)属于整个类,不属于某一个成员函数

(2)没有this指针,无法访问非静态成员函数

(3)出现在类外的成员函数不能用static

(4)非静态成员函数可以随意的访问所有静态成员函数。

static关键字的功能的更多相关文章

  1. (转)Java中的static关键字解析

    转载: http://www.cnblogs.com/dolphin0520/p/3799052.html 一.static关键字的用途 在<Java编程思想>P86页有这样一段话: &q ...

  2. Java中的static关键字解析

    Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...

  3. (转)Java中的static关键字解析

    转自http://www.cnblogs.com/dolphin0520/p/3799052.html 一.static关键字的用途 在<Java编程思想>P86页有这样一段话: “sta ...

  4. Java中的static关键字解析 转载

    原文链接:http://www.cnblogs.com/dolphin0520/p/3799052.html Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到 ...

  5. Java中的static关键字解析(转自海子)__为什么main方法必须是static的,因为程序在执行main方法的时候没有创建任何对象,因此只有通过类名来访问。

    Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键 ...

  6. java static关键字

    方便在没有创建对象的情况下来进行调用(方法/变量). 很显然,被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问. static可以用来修饰类的 ...

  7. Java中的static关键字

    写在前面: 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中static表示“全局”或“静态”的意思,用来修饰成员变量和成员方法,当然也可以修饰 ...

  8. java中static关键字解析

    static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键字的用法和平常容易误解的地方,最后列 ...

  9. java中的static关键字详解

    static对于我们这些初学者在编写代码和阅读代码是一个难以理解的关键字,也是大量公司面试题最喜欢考的之一.下面我就来就先讲述一下static关键字的用法和我们初学者容易误解的地方. static关键 ...

随机推荐

  1. WINDOWS内核版本

    Windows NT (NT=new technology)  WOW64(Windows-on-Windows 64bit) 如何获取Windows 内核版本 1. cmd (win+r) 2. V ...

  2. stm32阅读代码工具source insight

    不知道学stm32有没有这样的烦恼,想看一个项目的代码,但是用keil又发现建立工程太麻烦,单个打开文件又找不到函数和变量之间的依赖关系,变量和函数又不能高亮显示,linux下vim和emacs虽然很 ...

  3. HDU 1542 Atlantis(线段树面积并)

     描述 There are several ancient Greek texts that contain descriptions of the fabled island Atlantis. S ...

  4. Sangfor_AC用户不在线但在“在线用户管理”里有显示

    现象:用户实际不在线,但是在“在线用户管理”里有看到,而且在线时间很长. 分析:用户通过IP上线以后,只要IP地址在线或者下线时间不超过“无流量自动注销的时间”,那么就会显示到“在线用户管理”里. 而 ...

  5. f5 Syslog管理

    1.本地log保存7天.可输出至syslog服务器      local traffic 对应ltm

  6. swift - view的指定位置切圆角

    1. extension UIView{ func addCorner(conrners: UIRectCorner , radius: CGFloat) { let maskPath = UIBez ...

  7. 使用go语言的list实现一个简单的LRU缓存

    package main; import ( "container/list" "errors" "sync" "fmt" ...

  8. jquery字符串相等判断

    在jquery中字符串相等判断一直失败 原来是空格! string1, string2 若其中有一个为返回值或类似 $.trim(string1) == $.trim(string2) ------- ...

  9. webstorm打开一个门户工程流程

    1.电脑上安装了nginx   ,进入conf目录下,找到nginx.conf打开 2.将原配置中server部分替换掉 server{ listen       80;     server_nam ...

  10. Sonar配置与使用

    一.前置条件: 安装工具如下: JDK MySql服务器 SonarQube SonarScanner 从官网下载安装包进行安装,具体安装步骤略 二.配置 MySql配置: 打开SQL,创建sonar ...