首页 > 后端开发 > C++ > 正文

解释C语言中与语句块相关的作用域规则

WBOY
发布: 2023-09-11 12:53:10
转载
687 人浏览过

解释C语言中与语句块相关的作用域规则

作用域规则与以下因素有关 −

  • 变量的可访问性。
  • 变量的存在期。
  • 变量的使用边界。

与语句块相关的作用域规则如下所示 −

  • 语句块由花括号括起来,包含一组语句。

  • 在语句块中声明的变量可以在该块中访问和使用,但在块外部不存在。

示例1

以下是与与语句块相关的作用域规则相关的C程序 −

 演示

#include<stdio.h>
main ( ){
   {
      int i = 1;
      printf ("%d",i);
   }
   {
      int j=2;
      printf("%d",j);
   }
}
登录后复制

输出

输出如下 −

1 2
登录后复制
登录后复制

即使变量在各自的代码块中被重新声明并且使用相同的名称,它们被视为不同的。

示例2

下面是另一个关于语句块作用域规则的C程序−

 实时演示

#include<stdio.h>
main ( ){
   {
      int i = 1;
      printf ("%d",i);
   }
   {
      int i =2;
      printf ("%d",i);
   }
}
登录后复制

输出

输出如下 −

1 2
登录后复制
登录后复制

在具有与外部块相同名称的块内重新声明变量会掩盖外部块变量,在执行内部块时会发生这种情况。

示例3

这是另一个关于语句块相关的作用域规则的C程序−

 实时演示

#include<stdio.h>
main ( ){
   int i = 1;{
      int i = 2;
      printf ("%d",i);
   }
}
登录后复制

输出

输出如下 −

2
登录后复制

在内部块之外声明的变量可以在嵌套块中访问,前提是这些变量没有在内部块中声明。

示例4

考虑另一个与语句块相关的作用域规则的程序:

 演示

#include<stdio.h>
main ( ){
   int i = 1;{
      int j = 2;
      printf ("%d",j);
      printf ("%d",i);
   }
}
登录后复制

输出

输出如下 −

2 1
登录后复制

以上是解释C语言中与语句块相关的作用域规则的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板