I posted an admittedly strongly worded statement about the superiority of C++ over C. It seems I've greatly upset at least one person with that, and it deserves some explanation.
I didn't say C was worthless, I said it was inferior to C++. "Worthless" would imply a comparison against all other programming languages. I am talking only of C and C++. Here's my fundamental argument in support of my opinion:
Any C program which is suitable for solving a given problem, is also a C++ program which solves that problem.
In other words, for any C program you can write, I can write a C++ program which is "equivalent enough" that you cannot possibly argue that C++ worsens anything. Usually, the way I'll rewrite it in C++ is to change the file extensions from .c to .cpp and be done with it (modulo some minor differences, which if you really insist, we can go into detail to show that they don't matter much).
So, it's not really hard to defend the idea that C++ is at least as good as C for any given problem, because any C program is (again, possibly with minor modifications) also a C++ program.
Given that, we could then start debating the marginal value of each of the features of C++ that aren't in C. But here's the point: even if the marginal value of every single feature of C++ over C is negative, I can still be just as good as C by taking a C program and calling it a C++ program (which it is).