proc() {
static i=10;
printf("%d",i);
}
If this proc() is called second time, what is the output?
Answers were Sorted based on User's Feedback
Answer / sujith
I dont know how can it be 11 next time.
I agree that static variables are assigned only once, and
allocation is happening to the data segment, but it doesnt
mean that is going to change the value on its own, until u
do that manually.
U call this program for n times, the answer is going to be 10.
| Is This Answer Correct ? | 7 Yes | 1 No |
Answer / suchita
the answer is 10 bcoz no increment statement in that loop. if
increment statement is there then definitely the value of
static variable is increased. otherwise it is fixed.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / vignesh1988i
if it is called for second time also ,it will be 10 only but
in a different thought....
static keyword is only one time initilization....if the
compailer when again reads the same line it blindly ignores
it and print the latest value of yhat static variable
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / jeevan
There is not increment statement. In this case, always it
returs 10 only. even if 'i' is not static type, then also
it returns 10 only....... for confusing in interview, they
might have used 'static' key word here.
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / saurabh
does static function increment the counter variable by
one?? if not then how can u say that i value will be
incremented by 1.
finally the i value will be 10 only. it will not
increment.
| Is This Answer Correct ? | 1 Yes | 1 No |
Please list all the unary and binary operators in C.
How can I find the day of the week given the date?
what is the purpose of the code, and is there any problem with it. unsigned int v[10]; unsigned int i = 0; while (i < 10) v[i] = i++;
Is c language still used?
what will be the output off the following program? #include<stdio.h> int main() { int a; a=015+0*71+5; printf("%d,a"); return0; }
Explain Basic concepts of C language?
How can I get Single byte from 'int' type variable? Can we alter single bit or multiple bits in int type variable? if so, How?
what is the role you expect in software industry?
int i=0,j; j=++i + ++i ++i; printf(" %d",j);
the factorial of non-negative integer n is written n! and is defined as follows: n!=n*(n-1)*(n-2)........1(for values of n greater than or equal to 1 and n!=1(for n=0) Perform the following 1.write a c program that reads a non-negative integer and computes and prints its factorial. 2. write a C program that estimates the value of the mathematical constant e by using the formula: e=1+1/!+1/2!+1/3!+.... 3. write a c program the computes the value ex by using the formula ex=1+x/1!+xsquare/2!+xcube/3!+....
What is the right way to use errno?
How do I access command-line arguments?