全局作用域全局范围指定块外部定义的变量在程序结束之前都是可见的。示例#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编程中的函数作用域规则是什么?的详细内容。
