I wouldn't use the word "cushioned" so much as "abstracted" (for the sake of connotation)
I apologize if that came off as caustic; I really didn't mean for that to connote a derogatory slant. I just mean "cushioned" in the sense that the more abstracted languages could be considered "safer" because they shield the programmer from potential pitfalls and foot-shooting that can occur with languages that sit closer to the machine. Memory management, for example, is one thing that C doesn't make particularly easy, as you have to keep track of how much memory you're allocating and where pointers are and such by hand.
(There's nothing more frustrating than a program crashing with the message "Segmentation fault" and not knowing what pointer inappropriately dereferenced where. ) Many newer languages offer the "cushions" of garbage collection or similar automated memory management (Java, for example, doesn't even have the notion of pointers, instead relegating memory management entirely to the JVM).
I don't see C/C++ disappearing from the userspace anytime soon, and if they do, there will be other compiled languages to take their place.
That's true; there are newer compiled languages being developed (Rust and Go come to mind, though I've never really used either), and I suppose if they really catch on, it won't be such a bad thing.
I think a lot of my bias comes from the fact that C is what I'm most familiar with, so I tend to try to frame things in that paradigm, I guess. Somewhat ironically, though, I actually
started with C++, then decided I didn't really need object orientation for what little "projects" I was doing, so I learned the C way of doing things like standard I/O (fprintf()/sprintf()/scanf() as opposed to cin/cout/cerr), thinking in terms of functions operating on data structures rather than classes with "methods" (member functions), etc.
I won't claim that C is the Holy Grail of programming languages; that's certainly not the case. I wouldn't e.g. suggest that all command-line software be written in C/C++, especially if it isn't particularly demanding of the CPU (one exception I'll grant is core utilities like the Unix cp, rm, mv, etc., as those (IMO) do need to have finer-grained control/details of the underlying system calls and the like). Even small GUI utilities that aren't particularly demanding could be written in e.g. Python (wicd, a network management daemon/utility, is written mostly, if not entirely, in Python AFAIK).