1.what are local and global variables?
2.what is the scope of static variables?
3.what is the difference between static and global variables?
4.what are volatile variables?
5.what is the use of 'auto' keyword?
6.how do we make a global variable accessible across files?
Explain the extern keyword?
7.what is a function prototype?
8.what does keyword 'extern' mean in a function declaration?
Answer Posted / vignesh1988i
LOCAL variables:
these variables are also called as auto variables....
this will be having life only inside a particular block.
for ex:
int i=45;
{
i=34;
printf("%d",i);
}
printf("%d",i);
here the output will be for 1st printf it will be 34 & for
second will be 45. since 34 is local to that block of
coding.. after it comes out it dies. the default value is
garbage value.
GLOBAL variables:
these are those variables which will have life
until the program ends.... the scope will be throught....
it must be declared outside the first executable
statement... the default value is 0;. but when it comes to
prority wise local only will get the first place.......
for ex:
int i=21;
void main()
{
int i=99;
{
printf("%d",i);
}
printf("%d",i);
printf("%d",i);
}
the output will be for 1st printf it will print as 99.. for
second also 99 since local variable gets the first
prority.... then the last printf will print 21.
STATIC variables:
the scope of the static variables is with in the
particular block of code. for ex:
main()
{
for(static int i=0;i<3;)
i++;
i=34;
printf("%d",i);
}
this wont print 'i' as 34... this will give an error that
UNDEFINED SYMBOL 'i'. since when 'i' comes out this will
dies... this 'i' cant be referred by the compailer.. but
this will work when we do it in other way::
void main()
{
static int i=0;
for(;i<3;)
i++;
i=34;
printf("%d",i);
}
this will print i=34..... since we have defined as
static inside main block.... instead of FOR block ... till
main block prevails this i wont die..... so i=34 prints.
STATIC GLOBAL
1)this must be declared must be declared outside
inside the main function only main only
2)this is one time but here it will take the
initilization... last initilization
3)this is local to a block this has life til the
coding ends
AUTO:
this is as equal as local variables..... as mentioned for
local variables above
EXTERN:
this is declaration for global variable.. this can also be
declared as:
extern int i;
main()
{
----
---
}
FUNCTION PROTOTYPE:
this says a outer layer of , how the function definition of
the above prototype lies......
| Is This Answer Correct ? | 7 Yes | 1 No |
Post New Answer View All Answers
Explain what is #line used for?
Is c call by value?
Is it possible to execute code even after the program exits the main() function?
What is the purpose of void pointer?
What is I ++ in c programming?
Is the exit() function same as the return statement? Explain.
How many types of functions are there in c?
What is openmp in c?
How to declare a variable?
Hello. How to write a C program to check and display president party like if i type in the console "biden" and hit enter the output shoud be : "biden is democrat" and if i type "trump" and hit enter the output shoud be: "trump is republican"
Why is python slower than c?
in case any function return float value we must declare a) the function must be declared as 'float' in main() as well b) the function automatically returned float values c) function before declared 'float' keyword d) all the above
Explain how can I convert a number to a string?
a direct address that identifies a location by means of its displacement from a base address or segment a) absolute address b) relative address c) relative mode d) absolute mode
Write the control statements in C language