Probably a pretty vague and broad question, but do all C++ compilers compile code into C first before compiling them into machine code?
Nope. GCC for example goes from C++ -> assembler. You can see this by using the -S option with g++.
-S
Actually, now that I think about it, I don't think any modern compiler goes to C before ASM.