作用域规则与以下因素有关 −
变量的可访问性。变量的存在期。变量的使用边界。
与语句块相关的作用域规则如下所示 −
语句块由花括号括起来,包含一组语句。
在语句块中声明的变量可以在该块中访问和使用,但在块外部不存在。
立即学习“C语言免费学习笔记(深入)”;
示例1
以下是与与语句块相关的作用域规则相关的C程序 −
演示
#includemain ( ){ { int i = 1; printf ("%d",i); } { int j=2; printf("%d",j); }}
登录后复制
输出
输出如下 −
1 2
登录后复制登录后复制
即使变量在各自的代码块中被重新声明并且使用相同的名称,它们被视为不同的。
示例2
下面是另一个关于语句块作用域规则的C程序−
实时演示
#includemain ( ){ { int i = 1; printf ("%d",i); } { int i =2; printf ("%d",i); }}
登录后复制
输出
输出如下 −
1 2
登录后复制登录后复制
在具有与外部块相同名称的块内重新声明变量会掩盖外部块变量,在执行内部块时会发生这种情况。
示例3
这是另一个关于语句块相关的作用域规则的C程序−
实时演示
#includemain ( ){ int i = 1;{ int i = 2; printf ("%d",i); }}
登录后复制
输出
输出如下 −
2
登录后复制
在内部块之外声明的变量可以在嵌套块中访问,前提是这些变量没有在内部块中声明。
示例4
考虑另一个与语句块相关的作用域规则的程序:
演示
#includemain ( ){ int i = 1;{ int j = 2; printf ("%d",j); printf ("%d",i); }}
登录后复制
输出
输出如下 −
2 1
登录后复制
以上就是解释C语言中与语句块相关的作用域规则的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2582381.html