What will be the output of the following C code if the code is executed on a 32 bit platform?
#include <stdio.h>
enum sanfoundry
{
c = 0,
d = 10,
h = 20,
s = 3
} a;
int main()
{
a = c;
printf("Size of enum variable = %d bytes", sizeof(a));
return 0;
}
Answer: C
Correct answer: Size of enum variable = 4 bytes
An enum variable is stored as an int, which is 4 bytes on a 32-bit platform. The values of the enumerators do not affect it - the variable holds one of them, not all.
Please log in or register to report this question.