• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > C++中的局部变量、全局变量、局部静态变量、全局静态变量的区别

C++中的局部变量、全局变量、局部静态变量、全局静态变量的区别

作者:BrokenHeart 字体:[增加 减小] 来源:互联网 时间:2017-05-28

BrokenHeart 通过本文主要向大家介绍了c++全局变量,c++定义全局变量,c++全局变量的使用,c++如何定义全局变量,c++中全局变量等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

局部变量(Local variables)与 全局变量:

在子程序或代码块中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。

全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序或代码块。

当全局变量与局部变量同名时:在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。

全局变量在程序开始运行期间就已经在内存中开辟了内存空间,直到程序结束才会释放这块内存空间。

全局变量要在其他文件中使用,需显示的声明这个变量,使用extern关键字声明(extern int nData;)。

int nData = 10;  // 这是一个全局变量
int main()
{
  int i = 0;  // 这是一个局部变量,这个变量只在main函数中有效。
  int nData = 100;  // 这也是一个局部变量,但是这个局部变量与全局变量重名了,那么如果访问nData这个变量的时候到底访问的是哪个?
  cout << nData << endl;
  return 0;
}
</div>

这段代码输出的值是100,因为当局部变量与全局变量重名时,访问的是局部变量。否则访问的则是全局变量!

局部静态变量:

局部static变量与全局变量一样,在程序开始运行期间就已经在内存中开辟了空间,直到程序结束才会释放这块内存空间。

一个局部static变量只定义/初始化一次,后序都不再定义或初始化。

局部static变量只能在定义的子程序或代码块中访问,不能在外部访问,所以叫局部静态变量。

全局静态变量:

全局static变量与局部static变量一样,在程序开始运行期间就分配了内存地址。

局部static变量只能在定义的代码块中被访问,而全局static变量只能在定义的文件中被访问。不能跨文件访问。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C++中的局部变量、全局变量、局部静态变量、全局静态变量的区别
  • C++面试题之数a、b的值互换(不使用中间变量)
  • 简单介绍C++中变量的引用
  • 深入理解C++中变量的存储类别和属性
  • 深入理解C++编程中的局部变量和全局变量
  • c++作用域运算符用法(全局变量和局部变量)
  • C++中指向结构体变量的指针
  • C++多文件变量解析
  • 基于C++全局变量的声明与定义的详解

相关文章

  • 2017-05-28C++实现基数排序的方法详解
  • 2017-05-28浅谈c/c++中使用指针需要注意的问题
  • 2017-05-28使用C语言求二叉树结点的最低公共祖先的方法
  • 2017-05-28C语言printf详细解析
  • 2017-05-28解析C++编程中的选择结构和switch语句的用法
  • 2017-05-28C语言的isatty函数和ttyname函数以及sendmsg函数用法
  • 2017-05-28利用C语言实现HashTable
  • 2017-05-28C 语言restrict 关键字的使用浅谈
  • 2017-05-28C语言实现将字符串转换为数字的方法
  • 2017-05-28MFC设置对话框焦点的方法简述

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 浅谈C/C++中的static与extern关键字的使用详解
    • 用while判断输入的数字是否回文数的简单实现
    • 浮点数在计算机中存储方式是怎样的
    • 提高C++程序运行效率的10个简单方法
    • C++在成员函数中使用STL的find_if函数实例
    • VC++的combobox控件用法汇总
    • 深入理解数组指针与指针数组的区别
    • Linux线程管理必备:解析互斥量与条件变量的详解
    • C++实现日期类(Date类)的方法
    • C++类基本语法实例分析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有