C 编程中函数的作用域规则是什么?
本地范围
局部作用域指定块内定义的变量仅在该块中可见,而在块外不可见。
全球范围
全局作用域指定在块外定义的变量在程序结束前都是可见的。
示例
#include<stdio.h>输出结果int r= 50; /* global area */
main (){
int p = 30;
printf (“p=%d, r=%d” p,r);
fun ();
}
fun (){
printf (“r=%d”,r);
}
p =30, r = 50r = 50
与功能相关的范围规则
函数是执行特定任务的语句块。
在函数体内声明的变量称为局部变量
这些变量只存在于创建它们的特定函数中。其他函数和主函数也不知道它们
当函数完成其特定任务并返回调用点时,局部变量的存在就结束了。
示例
#include<stdio.h>输出结果main (){
int a=10, b = 20;
printf ("before swapping a=%d, b=%d", a,b);
swap (a,b);
printf ("after swapping a=%d, b=%d", a,b);
}
swap (int a, int b){
int c;
c=a;
a=b;
b=c;
}
Before swapping a=10, b=20After swapping a = 10, b=20
在函数体之外声明的变量称为全局变量。这些变量可由任何函数访问。
示例
#include<stdio.h>输出结果int a=10, b = 20;
main(){
printf ("before swapping a=%d, b=%d", a,b);
swap ();
printf ("after swapping a=%d, b=%d", a,b);
}
swap (){
int c;
c=a;
a=b;
b=c;
}
Before swapping a = 10, b =20After swapping a = 20, b = 10
以上是 C 编程中函数的作用域规则是什么? 的全部内容, 来源链接: utcz.com/z/311384.html