C Programming - Const - Discussion

Discussion :: Const - Find Output of Program (Q.No.1)

1. 

What will be the output of the program?

#include<stdio.h>

int main()
{
    int y=128;
    const int x=y;
    printf("%d\n", x);
    return 0;
}

[A]. 128
[B]. Garbage value
[C]. Error
[D]. 0

Answer: Option A

Explanation:

Step 1: int y=128; The variable 'y' is declared as an integer type and initialized to value "128".

Step 2: const int x=y; The constant variable 'x' is declared as an integer and it is initialized with the variable 'y' value.

Step 3: printf("%d\n", x); It prints the value of variable 'x'.

Hence the output of the program is "128"


Manorama said: (Sep 17, 2011)  
But it is cont int and it is different from int.

Mithun Yadav said: (Aug 30, 2014)  
But const int only initialized by const literals. Then how it will print 128 ?

Rohan said: (Jun 1, 2018)  
According to me, It is;

#include<stdio.h>

int main()
{
int y=128; /* value can change */
const int x=y;
/* once it declare as a const int , the value of x doesn't change */
printf("%d\n", x);
return 0;
}

Post your comments here:

Name *:

Email   : (optional)

» Your comments will be displayed only after manual approval.