My other suggestions would be to also consider Python and PHP, PHP in particular if you're into a lot of web stuff. Also on the "web-centric" list would be Javascript.
If your ultimate aim is to work professionally, then you'll end up knowing a couple of languages in depth, several more will be familiar, and yet more you'll be able to "get by with, if you've got the manual". With this in mind, which language you learn first doesn't really matter so much. And over a career, you'll learn new ones as well.
I was for example taught Pascal, but I never used it professionally, and I've never considered it a waste. It was just a practical manifestation of all the "how to..." information.
The choice for you at the moment is trying to decide which vehicle to buy without having learnt to drive. Nor have you decided whether you want to be in F1 or a road haulier.
For sure there are a whole set of skills unique to each, but there are also significant similarities across a very broad spectrum.
Continuing with the car metaphor, you'll want to practice in a nice easy car which doesn't bite back. C++ is a Ferrari. Fast and sleek to be sure, but also capable of being turned into instant wreckage unless you're careful.
C is also a Ferrari, but with somewhat loose steering, and suspect brakes
The languages I mentioned above are good in the sense that if you make a mistake, the worst that usually happens is that the program just doesn't work. C++ on the other hand is also capable of working despite what you do to mess it up, or play "head games" with you by making something else break instead.
For me, the portable skill is knowing how to program. These are the skills which allow you to look at a list of requirements, organise those into a coherent design and then implement that (in possibly several languages) to produce a working program.
"Object Oriented" programming is just one of several different (and complementary) techniques for organising these steps.
For example, if you know you need a for loop, then at the worst all you'd need to do is look up the syntax in the book. After half a dozen languages, you'll realise that most for loops look pretty much the same. There are after all only a finite number of ways of saying "start here, stop there".
But the opposite of memorising the syntax for say C++ isn't going to teach you anything about how to write programs. Yes, you'll be able to recognise C++ when you see it (I can recognise French when I see it), but the real trick is being able to write it.
There are a lot of "hello world" programmers which can cope with the typical student assignment, but writing larger programs (ones which take weeks or longer to write) are way beyond their reach.