局部变量 全局变量 作用域 静态存储 动态存储,…
2018-06-17 21:36:43来源:未知 阅读 ()
局部变量:函数内部定义的变量
float fun(int a){
int b,c;
}
产生作用的范围紧紧限于函数内部
全局变量:函数之外定义的变量
int p=1,q=5;
int fun(int r){
r=p+q;
}
产生作用的范围在从定义位置开始到全部程序结束
最好写在#include <iostream>的后边
{
int b,c;
b=2;c=5;
int sum;
sum=b+c;
}
作用域:分为4种不同的作用域(1)文件作用域 (2)函数作用域 (3)块作用域 (4)函数原型作用域
存储期:就是生命周期
静态存储:程序运行期间分配固定的存储空间
全局变量
动态存储:程序运行期间分配自动的存储空间
动态分配的有(1)函数的形式参数 (2)函数中定义的变量 (3)函数调用时的现场保护和返回地址
自动变量:就是不加static的变量,而加auto
int fun(int a){
auto int b,c=3;
}
b和c 就是自动变量,为什么之前就没有,突然出现,因为你根部不需要写auto ,自动默认就是auto,就是可以省略
静态局部变量,无论局部还是全局,加上static 意义就不一样了
C++中的static声明的变量只能在本程序中调用。
看结果?
#include <iostream> using namespace std; int fun(int a){ auto int b=10; static int c=6; b+=3; c+=5; return a+b+c; } int main(){ int a=20; for(int i=0;i<3;i++){ cout<<fun(a)<<" -- "; } return 0; }
看结果?
#include <iostream> using namespace std; int fun(int a){ static int c=1; c*=a; return c; } int main(){ for(int i=1;i<6;i++){ cout<<i<<"!="<<fun(i)<<endl; } return 0; }
看结果?
#include <iostream> using namespace std; int fun(int a){ static int c=1; c*=a; return c; } int main(){ for(int i=1;i<6;i++){ cout<<i<<"!="<<fun(i)<<endl; } return 0; }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:素数的筛法
下一篇:第四章函数作业题,有参函数的调用
- C++ 单定义规则 2020-05-10
- C++ 静态持续变量 2020-05-10
- C++ 自动变量 2020-05-10
- 第一章 从C到C++ 2020-04-04
- C++ 初始化 2020-03-26
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash