I've heard many stories that Learning C or C++ as your first language is not exactly the best thing to do since the learning curve can be very steep for some, but I've had no qualms with it. Maybe I'm an exception? Or maybe I don't quite understand it as well as I think.
I think this (the bold part) is the case. Not that you show any particular signs of misunderstanding; you just seem so new to it that I don't think you realize what you don't know. Are you comfortable with pointers, memory management, recursion, data structures, etc?
It also doesn't hurt to learn some computer science theory (which you might wanna do if you want to make super fast game engines). Do you know about hash tables, regular expressions, graph algorithms like breath-first-search, sorting algorithms, dynamic programming, complexity analysis?
I think it might be best to stick with C a little bit longer, so that when you learn new languages later you can appreciate the differences more. And you might want to read up on some theory and such on the side, if you are interested.
Lastly, and I almost didn't write this because it seems so obvious now (I started 8 years ago): Programming is so much more than knowing languages. Besides the things I've mentioned, there is also the skill of good program/code design. I mean writing well-structured, maintainable, reusable, flexible, short, simple, correct and safe code. If you always think hard about the code you are writing, like "Could this be done better?", "Are there problems that might arise later with this?", etc. you will speed up your learning process. Reading books, blogs, and watching presentations can also help a lot.