"Built on C" seems like the wrong phrase to me. "Extension of C" is a better fit.
> You need to know C
Learning C before C++ is a very bad idea, as it will make you try to use language patterns that are considered bad ideas in C++, as there are safer alternatives.
C++ is built on C. You need to know C (but maybe not the C library) to know C++. Like pointers