Open In App

Anything written in sizeof() is never executed in C

Last Updated : 02 Oct, 2017
Improve
Improve
Like Article
Like
Save
Share
Report

In C/C++ sizeof() operator is used to find size of a date type or variable. Expressions written in sizeof() are never executed.

Examples:




// C program to demonstrate that the
// expressions written in sizeof() are
// never executed
#include <stdio.h>
  
int main(){
      
    // The printf in sizeof is not executed
    // Only the return type of printf is 
    // considered and its size is evaluated
    // by sizeof,
    int a = sizeof(printf("hey"));
  
    printf("%d", a);
      
    return 0;
}


Output:
4

Even if we assign a value inside sizeof(), the changes are not reflected.




// One more C program to demonstrate that 
// the expressions written in sizeof() are
// never executed
#include <stdio.h>
  
int main() {
    int a = 5;
    int b = sizeof(a = 6);
    printf("a = %d,  b = %d\n", a, b);
    return 0;
}


Output:
a = 5, b = 4

Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads