#define power(a) #a
int main()
{
printf("%d",*power(432));
return 0;
}
can anyone explain the o/p??
the o/p is
52
#define power(a) #a
int main()
{
printf("%d",*power(432));
return 0;
}
can anyone explain the o/p??
the o/p is
52
It is equivalent to:
printf("%d",*"432");
which is equivalent to:
printf("%d", '4');
and the ASCII value of '4'
is 52
.
#define power(a) #a //# is a stringization operation in macro
int main()
{
printf("%d",*power(432));
return 0;
}
Hence after calling power(432), macro will return it "432" and applying * on it gives first value which is nothing but 52 (48 + 4) for '4' .