IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 作用域,链接,储存区, -> 正文阅读

[C++知识库]作用域,链接,储存区,

1.作用域描述程序中可访问标识符的区域。一个c变量的作用域可以是块作用域(是用一对花括号括起来的代码区域),函数作用域(仅用于goto语句的标签),函数原型作用域(用于函数原型中的形参名)或文件作用域(该文件作用域变量也叫全局变量)

2.c变量有3种链接属性:外部链接,内部链接或无连接。具有块作用域,函数作用域或函数原型作用域的变量都是无链接变量。具有文件作用域的变量都是外部或内部链接。(通常把内部链接的文件作用域简称为“文件作用域”,把外部链接的文件作用域简称为“全局作用域”,或“程序作用域”。

int ret=5;//文件作用域,外部链接
static reu=8;//文件作用域,内部链接
该文件和同一程序的其它文件都可使用变量ret。但变量reu属于文件私有,该文件中任意函数可以使用。

3.作用域和链接描述了标识符的可见性,储存期描述了通过这些标识符访问的对象的生存期。c语言有4种储存期:静态储存期,线程储存期,自动储存期,动态分配存储期。

静态储存期:若对象具有静态储存期,它在程序执行时一直存在。(static表明了链接属性,不是储存期)列如static修饰的文件作用域变量具有内部链接,但无论内部链接和外部链接,文件作用域变量都具有静态存储期。

线程存储期:用于并发程序设计,程序执行可被分为多个线程。具有线程存储期的对象,从被声明到线程结束一直存在。

自动存储期:属于自动存储的类别的变量具有自动存储期,且具有块作用域,无链接。

#include<stdio.h>
int main()
{
   int x=10;//原始的x
   int j=0;
   for(i=0;i<4:i++)
      {
      int x=8;//新的x,隐藏了原来的x
      printf("%d\n",x+i);
      }
   while(x>5)//原始的x
      { 
        x--;

      }
printf("%d",x);

return 0
}

块作用域的静态变量

#include<stdio.h>
void list();
int main()
{
  int count 0;
  for(count=0;count<=4;count++)
     {
       printf("%d",count);
     }
  list();
  return 0;
}
void list()
{
  int j=0;
  static int k=1;
  j++;
  k++;
  printf("%d %d",j,k); //j每次都为1,static保存了k的值,会增加
}

extern:不能创建外部的定义,只能引用现有的外部定义

extern int w;//引用式声明,外部链接
static h=0;//静态定义,内部链接
int count=0;//文件作用域,外部链接
int main()
{   int i=0;//自动变量(局部变量)
    register int k;//寄存器变量
    static int u=0;//静态,无链接
    return 0;

}

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-28 11:05:10  更:2021-11-28 11:07:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:33:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码