c scope rules
C Scope Rules
Ascope in any programming is a region of the program where a defined variable can have
its existence and beyond that variable cannot be accessed.
There are three places where
variables can be declared in C programming language:
Inside a function or a block which is called local variables,
Outside of all functions which is called global variables.
In the definition of function parameters which is called formal parameters.
Let us explain what are local and global variables and formal parameters.
Local Variables
Variables that are declared inside a function or block are called local variables.
They can
be used only by statements that are inside that function or block of code.
Local variables
are not known to functions outside their own.
Following is the example using local
variables.
Here all the variables a, b and c are local to main() function.
#include <stdio.h>
int a, b;
int c;
/* actual initialization */
a = 10;
b = 20;
c = a + b;
printf ("value of a = %d, b = %d and c = %d\n", a, b, c);
return 0;
}
Global Variables
Global variables are defined outside of a function, usually on top of the program.
The
global variables will hold their value throughout the lifetime of your program and they can
be accessed inside any of the functions defined for the program.
A global variable can be accessed by any function.
That is, a global variable is available
for use throughout your entire program after its declaration. Following is the example using
global and local variables:
#include <stdio.h>
int g;
A program can have same name for local and global variables but value of local variable
inside a function will take preference.
Following is an example:
#include <stdio.h>
Comments