Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: Intermediate
Aug 21, 2007

The Sizeof() Operator Only Works at Compile Time

The Sizeof () operator only works at compile time and doesn't evaluate anything at run time.

In the following code snippet, the func() function is never called. The inner sizeof() returns the size of short (return type of func()) and the outer sizeof() returns the size of size_t—in other words, the unsigned int (return value of sizeof()):

short func(short x)
   printf("%d", x);
   return x;
int main()
   printf("%d", sizeof(sizeof(func(3))));
Tony Madhur
Thanks for your registration, follow us on our social networks to keep up-to-date