Can anyone explain this program

The evaluation of the expression will be like this: (10?(0?5:1):12) It will return 1
Then, the statement "printf("%d", 10?0?5:1:12);" will print 1, and will return 1 (as we know that printf return the total number of printed characters), further the statement will be 1|1 - that will do nothing.

1 Like