static静态局部变量的用法,最直接的解释,一看秒懂!
2016-02-22 19:55
309 查看
10行经典代码,两种结果,阐述static的作用。废话少说,直接码字。【看懂了,点个赞哈】
// 包含static静态局部变量i的结果,静态局部变量i都保存了前次test函数被调用后留下来的值。
#include <iostream>
using namespace std;
void test() {
static int i = 10;
cout << i<<endl;
i++;
}
void main() {
test();
test();
test();
system("pause");
}
运行结果: 10 11 12
// 不包含static静态局部变量的结果
#include <iostream>
using namespace std;
void test() {
int i = 10;
cout << i<<endl;
i++;
}
void main() {
test();
test();
test();
system("pause");
}
运行结果: 10 10 10
【举个例子:用static,编写3的立方小程序】
#include<iostream>
using namespace std;
int mul(int x)
{
static int n = 1;
n = n*x;
return n;
}
void main()
{
int i = 3;
int iResult;
for (int j = 1; j<4; j++)
{
iResult = mul(i);
}
cout << "Result :" << iResult << endl;
system("pause");
}
// 包含static静态局部变量i的结果,静态局部变量i都保存了前次test函数被调用后留下来的值。
#include <iostream>
using namespace std;
void test() {
static int i = 10;
cout << i<<endl;
i++;
}
void main() {
test();
test();
test();
system("pause");
}
运行结果: 10 11 12
// 不包含static静态局部变量的结果
#include <iostream>
using namespace std;
void test() {
int i = 10;
cout << i<<endl;
i++;
}
void main() {
test();
test();
test();
system("pause");
}
运行结果: 10 10 10
【举个例子:用static,编写3的立方小程序】
#include<iostream>
using namespace std;
int mul(int x)
{
static int n = 1;
n = n*x;
return n;
}
void main()
{
int i = 3;
int iResult;
for (int j = 1; j<4; j++)
{
iResult = mul(i);
}
cout << "Result :" << iResult << endl;
system("pause");
}
相关文章推荐
- 分区存储管理——空闲分区的分配策略
- 1099. Build A Binary Search Tree (30)
- 机房收费系统之数据要求说明书
- 如何用C#动态编译、执行代码
- css定高行级元素垂直居中
- WiFi破解
- 被玩坏的innerHTML、innerText、textContent和value属性
- 图 --- 二分图
- Linux IO 同步/异步 阻塞/非阻塞
- 关于项目中时常遇到的R资源出错问题
- redis学习之二from github
- PAT--哥尼斯堡的“七桥问题”--深度搜索
- smarty引擎
- 第一个Java程序——HolloWorld
- 6个技巧加速你的gradle编译
- Linux下查看某个软件安装路径
- [Locked] Meeting Room I && II
- 蓝桥杯--第39级台阶
- 标准IO库
- MillWheel: Fault-Tolerant Stream Processing at Internet Scale