× Terms of Use Privacy Policy

Take me back!! I want my CSS!! Click me to get back :)


Are you missing out on your dream job?

Enrollment for Skillcrush Blueprints JUST OPENED. Register today!

Click Here

C, C++, C# and Objective C

C, C++, C# and Objective C are a set of similarly-named programming languages, some of which are related and some of which are not.

Get Our FREE Beginners Guide to Landing a Junior Developer Job

Back in 1969, the programming language C was created at Bell Labs by a computer scientist named Dennis Ritchie. Ritchie based C off of an earlier language called B. C spread to wide use quickly and is arguably the most popular programming language ever made; one big reason is that programs written in C can run on all sorts of different operating systems (Macs vs. Windows, for example) with only small tweaks.

These days, C is used when you need something that runs quickly without using much memory. This usually means behind-the-scenes code, like the code that lets your keyboard or monitor talk to the rest of your computer (a.k.a. device drivers). Since it’s so common, though, you’re going to be finding C all over the place!

C++ was a programming language developed in 1979 by a Danish programmer with the amazing name Bjarne Stroustrup. It was originally called “C with Classes,” and was renamed C++ in 1983. ++ is shorthand for adding 1 to a number in programming, so C++ roughly means “one better than C.” We might just plain call that D, but because it was so closely related to C he went with C++ instead.

C++ added a ton of new features to C, designed to make programming more efficient and give the developer more options on how they’d like to code. The biggest addition is something called object oriented programming. The basic idea of object oriented programming is that all of your code is arranged in little bundles of data and actions, instead of a spread-out jumble.

For example, if I’m writing a program about a bike and a person, I’d have an object called bike and an object called person, and write things like bike->color, bike->brand, and person->name to get information about them. Why’s this important? Just like you might keep all of your bills in one drawer and your love letters in another drawer, a lot of programmers find this sort of organization helpful. We’ll write a whole email on object oriented programming soon, we promise!

Thanks to object oriented programming and other additions, it’s easier to write complex programs in C++ than plain C. This makes C++ popular for complex software packages – most of Windows is written in C++. With all of the additions, though, C++ has a little more overhead in terms of things like memory usage and file size. C++ is the third most popular programming language, behind C and Java.

Objective C was created by two guys, Brad Cox and Tom Love, at their company Stepstone in 1983, but has recently become very popular as the driving force behind OS X and iPhone apps. It’s a “superset” of the C language – it can do everything C can, but also has a few extra features. These features were pulled from a language called Smalltalk, and like C++, were mainly focused on making the language more object-oriented.

C# came out of Microsoft in 2001, intended as a new object-oriented language. It isn’t actually based on C – it was intended to be “C-like,” but the two languages didn’t end up having much in common. C# was originally code-named “Cool,” but Microsoft was on a roll with adding # to letters (A#, F#) so they went ahead and named it C#.

C#, like C++, can be used for pretty much anything. Since it was produced by Microsoft it ends up powering a lot of Windows programs also, but it’s also an option for doing web development on a Windows-based web server.

All in all, C spawned a lot of new languages. You can imagine C++ and Objective C as C’s sophisticated offspring, while C# is the neighbor kid who’s always hanging around the house.

Cocktail Party Fact

We can cover most of the alphabet with programming languages: A, B, D, E, F, G, J, K, L, M, Q, R, S, and T are your basics, and then you can throw in P#, J#, F# .NET, X++, C–, A++ and a plenty more!

Get Our FREE Beginners Guide to Landing a Junior Developer Job

Your email address will not be published.


  1. Bob Replied

    Nice, concise explanations with just enough fun to keep it interesting. :-) Well said.

  2. Lana` Replied

    This was a hugely helpful article and really well written for laymen. Thank you.

  3. Daniel Illsley Replied

    C# Is Based On Java And C Is Based On B C++ And Objective C Are Based
    On C

  4. Raheel Replied

    First time I read an article explaining things so clearly. Good luck skill crushers

  5. AwesomeCat100 Replied

    “imagine C++ and Objective C as C’s sophisticated offspring, while C# is the neighbor kid who’s always hanging around the house.” Lol that was actually the perfect way to describe them.

  6. JP Replied

    That was the most genuine way of explaining the reason for object orientiation.

  7. Mikant Replied

    > but Microsoft was on a roll with adding # to letters (A#, F#)
    aren’t u confused with the fact a# & f# came a ‘few’ years later than c# ?… nice article, but this…

  8. Nick Replied

    Thank you very much, you made it a little more clear for me.

  9. rightfold Replied

    It’s “Objective-C”, not “Objective C”.

    • Adam Replied

      haha.  Oh sorry, forgot to capitalize the h. Haha.

    • cromm Replied

      Crush you enemies, see them driven before you, and to hear the lamentation of their women.

Want more articles like this?

Sign up to get the most recent tech news, tips and career advice.