网站大量收购独家精品文档,联系QQ:2885784924

C++变量的存储类型.ppt

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C变量的存储类型

北京邮电大学电信工程学院计算机技术中心 目录 算法 1、外部变量的使用 2、静态全局变量和全局变量的区别 3、静态局部变量和局部变量的区别 4、静态局部变量和静态全局变量的区别 总结 1、外部变量的使用 关键字: extern 用途: 用于多文件结构中的不同源文件之间的数据共享。与全局变量结合使用。 判断输出结果? 运行结果 1 4 2、静态全局变量和全局变量的区别 关键字: static 用途: 全局变量的作用域:整个程序 静态全局变量的作用域:当前源文件 判断输出结果? 运行结果 0 1 3、静态局部变量和局部变量的区别 比较 静态局部变量 1、静态生存期,全局数据区,默认值0 2、本函数内部 局部变量 1、动态生存期,栈区,无默认值 2、本函数内部 4、静态局部变量和静态全局变量的区别 比较 静态局部变量 1、全局数据区,默认值0,静态生存期 2、本函数内部 静态全局变量 1、全局数据区,默认值0,静态生存期 2、当前源文件 总结 1、静态全局变量和静态局部变量的区别 2、静态局部变量和局部变量的区别 3、静态全局变量和全局变量的区别 * * 函数调用 main.cpp 函数实现 file1.cpp 函数声明 file1.h #include iostream using namespace std; #include file1.h int x; //全局变量 void main() { x=1; print(); set(4); coutxendl; } //file1.h void print(); //输出全局变量 void set(int a); // 设置全局变量 //file1.cpp #include iostream using namespace std; extern int x; //外部变量 void print() { coutxendl; } void set(int a) { x = a; } 函数调用 main.cpp 函数实现 file1.cpp 函数声明 file1.h #include iostream using namespace std; #include file1.h static int x; //静态变量 void main() { x=1; print(); set(4); coutxendl; } //file1.h void print(); //输出全局变量 void set(int a); // 设置全局变量 //file1.cpp #include iostream using namespace std; static int x; //静态变量 void print() { coutxendl; } void set(int a) { x = a; } //判断程序的运行结果 #include iostream using namespace std; void test(int step) { static int s=0; int a=0; s+=step; cout“s=”s; a+=step; cout“a=”aendl; } ?void main() { test(1); test(1); test(1); } 运行结果: s=1 a=1 s=2 a=1 s=3 a=1 //判断程序的运行结果 #include iostream using namespace std; static int qs; void test(int step) { static int s=0; s+=step; cout“s=”s; qs++; cout“qs=”qsendl; } ?void main() { test(1); qs++; //s++; 编译错误 test(2); } 运行结果: s=1 qs=1 s=3 qs=2 作用域不同 前者:静态生存期,程序运行期间只定义一次; 后者:动态生存期,程序运行期间可以反复重新定义 作用域不同: 前者:当前.cpp

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档