A Puzzle on C/C++ R-Value Expressions

What will be the output of following program?

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <stdio.h>
int main()
{
   int i = 0xAA;
   ~i, printf("%X\n", i);
  
   return 0;
}

chevron_right


Output: 0xAA

No change in i value, the emphasis is on l-value and r-value expressions. The expression ~i is an r-value, it has to be assigned to an l-value to retain the change.



Puzzle phrased by Venki. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.



My Personal Notes arrow_drop_up


Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.