zoukankan      html  css  js  c++  java
  • 作用域

    作用域 ---- 文件作用域、函数作用域、代码块作用域、原型作用域

      1.代码块作用域:以大括号包括的所有语句为一个代码块

        大括号外面无法访问大括号里面定义的标识符

        若大括号里面有和外面同名的标识符,则外面的该标识符在大括号里面无法访问

    int i = 0;
    {
        int i = 1;
        int j = 2;        
        printf("%d
    ",i);    //输出1
    }
    printf("%d
    ",i);      //输出0
    printf("%d
    ",j);     //错误

        不同语句块中的变量不能相互访问

    {
        int j = 0;
    }
    {
        int i = 1;
        printf("%d
    ",j);    //错误
    }

      2.文件作用域

        不在任何代码块声明的变量、函数从声明处到文件末尾都可以访问,这样的标识符具有文件作用域。

        #include包含的也具有文件作用域

      3.原型作用域(prototype scope):只适用于在函数原型中声明的参数名

        唯一可能的冲突是同一个原型中声明两次同名变量

    int fun(int i,int j);   //不能在一个原型中声明同名形参

      4.函数作用域

        只适用与语句标签,语句标签用于goto语句

        即一个函数的所有语句标签必须唯一

    --------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------学习记录,都是基本知识------------------------------------------------------------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
  • 相关阅读:
    设计模式之—适配器模式
    设计模式之—代理模式
    设计模式之—模版方法模式
    设计模式之—单例模式
    Memcached相关内容总结
    Mac OS使用brew安装memcached
    CentOS 7使用dnf安装Memcached以及启动、停止、开机启动等设置
    java中常用的几种缓存类型介绍
    Java线程池使用和源码分析
    客户端连接腾讯云服务总是自动断开连接解决办法
  • 原文地址:https://www.cnblogs.com/hugue/p/5008667.html
Copyright © 2011-2022 走看看