how can we use static and extern?and where can we use this?

Answers were Sorted based on User's Feedback



how can we use static and extern?and where can we use this?..

Answer / pramod

static storage class is used for the following situations
1) the variable is defined as static within a function and
we can call the function several times, but we want that the
function should initialize the variable only once that is
during the first call to that function.So the variable will
stay alive in different calls to this function
2)In C++ , if we want a common variable between all the
objects( like a counter for how many objects have been
created) then static is allocated as it is not attached to
any object but class

extern storage is for global variables
1)if we want one varibale to be available to all the
functions in our program, make the varibale as global
variable( extern storage), it will be accessed by all the
functions in that file.But avoid declaring variable as
global for security reasons( can be accessed from any other
file in the PATH) and memory reasons (global variables are
deallocated only when the entire program terminates).
2)if we declare a variable in a file as extern , then
compiler will assume that this variable is not defined in
the present file but in some other file.So while compiling
there won't bw any error but error will come at the linking
if the extern variable is not present in the refernced files.

There is one special case
static global variable

we want a variable to be global , means accessible to all
the functions in that file and want that the variable should
not be accessible to any other file, just to make it static
global variable.So the visibility of that variable becomes
file specific only.

Is This Answer Correct ?    3 Yes 1 No

how can we use static and extern?and where can we use this?..

Answer / manojkumar

the above answer is write.thanks to vignesh.

Is This Answer Correct ?    1 Yes 0 No

how can we use static and extern?and where can we use this?..

Answer / vignesh1988i

static and extern are some types of storage classes in C...
there are four types of storage classes in C:
1) automatic (auto) storage class
2) static storage class
3) register storage class
4) extern storage class

static is a one which will be read only once by the compiler
(ie) it will ignore an another pass.... or it will be
initialized only once....... the scope of this class is
within the block only....

extern is a global declaration , but most of the compilers
dont prefer it to be used within a program.......


thank u

Is This Answer Correct ?    3 Yes 3 No

Post New Answer

More C Interview Questions

Read two numbers from keyboard and find maximum of them?

1 Answers  


Is c pass by value or reference?

0 Answers  


main() { intx=2,y=6,z=6; x=y=z; printf(%d",x) }

5 Answers   Amazon, HCL, Thought Works,


Determine the code below, tell me exactly how many times is the operation sum++ performed ? for ( i = 0; i < 100; i++ ) for ( j = 100; j > 100 - i; j--) sum++;

5 Answers   ITCO, Wipro,


Write the control statements in C language

0 Answers   Atos Origin,






In c programming language, how many parameters can be passed to a function ?

0 Answers  


pgm to reverse string using arrays i.e god is love becomes love is god) (assumption:only space is used for seperation of words) no addtional memory used.i.e no temporary arrays can used.

4 Answers   Persistent, Valyoo,


print ur name without using any semicolon in c/c++....

21 Answers   Bosch, TCS, Wipro,


Why shouldn’t I start variable names with underscores?

0 Answers  


what is use of malloc and calloc?

0 Answers  


Is it possible to run using programming C for Java Application?

2 Answers   NIC,


how to TOGGLE Nth bit of variable in a MACRO

1 Answers   NDS,


Categories