Do you know why is C more popular than C++?
C is still dominant as an embedded programming language for hardware.
That’s partially because every hardware manufacturer has a C compiler but not one for all of C’s rivals. Except Objective C.
Objective C is the programming language of the iOS. You can find a C++ compiler, but not for PIC microcontrollers.
It is not like I’m planning on programming microcontrollers. There are people who’d ask why bother coding in C anymore.
C++ is now almost as fast as C, and efficiency is equal if you have good coding practices.
Both C and C++ are faster than dot net and Java.
C++ used to be very hard to port from one device to another, but that’s been resolved. However, C remains popular because it has been portable since the 80s or so.
I’ve rarely been so tempted to say “That’s so 80s” before.
C is one of the few languages where you can learn it in its entirety and not be surprised by new features. And you do not have to use API calls.
C is still a simple programming language, mostly because it still has a small vocabulary, so to speak. Simpler doesn’t mean better.
It is hard to do worse than Java.
C is also more legible than C++. It is easy to understand what it does, which makes it preferable for complex infrastructure.
Now we’re back to hardware.
Complex infrastructure includes payroll systems and hardware integration, too. That’s why C was used to write Oracle’s primary JVM.
So C still has an advantage, but those advantages are disappearing.
C programmers certainly get an A for effort. It has managed to stay around for decades and will still be used for many more years, and not as a niche like Haskell.