Hombre, es más alto que ensamblador y mucho más bajo que Java, Python, PHP etc etc etc.
Así que sí, C y C++ son lenguajes de bajo nivel.
Que tenga características de bajo nivel, no significa que sea de bajo nivel.
Low-level programming language - Wikipedia
A
low-level programming language is a
programming language that provides little or no
abstraction from a computer's
instruction set architecture—commands or functions in the language map closely to processor instructions.
C++ as a high-level language? - Stack Overflow
Now, after a years of keeping away from C++, I've started recently to refresh my knoweledge, but now I beagan with "Accelerated C++" by Andrew Koenig and Barbara E. Moo. And what I'm seeing there is absolutely "another C++"! amowing this book, you can in fact use C++ almost without knowing its C-core: you can never use arrays, since you have vectors, you can forget about char*, since you have string, etc., etc. From this point of view, STL is really the heart of the language and the language itself appears to be a very "high level" one, but with performance and control over entities which neither Java, nor Python could ever afford.
So, what C++ do YOU use in you practice? Do you mix the styles, say, arrays and vectors? Are there any rules or best practices here?...
UPDATE:
I was told in comments that the thing I'm talking about is what's now called "Modern C++".