This question was triggered by replie(s) to a post by Herb Sutter where he explained MS\'s decision to not support/make a C99 compiler but just go with the C(99) features th
In C++, setting one member of a union and accessing the value of a different member is undefined behavior, whereas it's not undefined in C99.
There are lots of other differences listed on the wikipedia page.