I really wish people would stop lumping C and C++ together. They are two separate language that have a common lineage, but neither is a subset of the other. The people who write C well do not generally write C++ well, and vice versa. It's a pretty different development community between the two languages. Bjarne Stroustrup, also thinks that treating the two language as if they were one is kind of silly.
I'm really glad people do lump C and C++ together, because the tiny fraction of the C language which is not a proper subset of C++ affects life very little in practice. C++ is a multiparadigm language and it is completely reasonable to use it like one uses C, if that's what suits your need and environment.
In embedded firmware development, for example, one often simply can't afford the RAM it would take to run a malloc/free heap, and may have hard realtime constraints that would preclude the use of dynamic memory management even if more RAM were available. It may still be worth using C++ for such systems even if you're writing functions-and-pointers style code like you would in C, because namespaces and class/struct encapsulation are useful tools on their own.
They are separate languages, but it is definitely not like saying ML/Haskell. Most C code can be converted in C++ without too much work. In fact, that is what GCC did:
That is bad, and is ripe to create a lot of errors.
C programmer who tries to write C code in C++ has the worst problem ever, IMO: he doesn't know that he's wrong. Everything compiles, everything works, and he goes home happy after a productive day of laying mines for future maintainers.
This is an opinion that I see a lot and it's very overstated IMO. If you write good C code, I'm perfectly happy to see it in C++.
In fact, you could almost say it's a relief, largely because it tends to be impossible to write any overly-clever template-inspired madness that will be hard to understand and drag down compile times for a small benefit.
Additionally, when it comes time to optimize code (assuming this block is worth optimizing, and already is using the optimal algorithm), the C code tends to be closer to what you want to optimize than the C++ code. With the C++ code, you typically have to spend more time removing abstractions before you can start actually tuning it.
That said, while bad code in either is bad (obviously), someone could probably make the argument that bad C++ code is easier to fix than bad C code. I might be able to be convinced of this.
Saying "C/C++" is like saying "ML/Haskell".