DEV Community

Ludivine A
Ludivine A

Posted on

C vs C++ vs C#

Have you encountered these programming languages and wondered why they have such similar names ? Well this article is a small introduction to explain what these 3 languages are all about.

C

Invented in 1972 by Dennis Ritchie and published in 1978
C is a procedural language with the lowest level of abstraction, which means that it is as efficient as assembly code. It allows developers to access and manage memory directly. C compiles programs into machine code and can be used on any platform.
It is still the most widely used programming language of all time.

C++

Created by Bjarne Stroustrup 1985

C++ was developed to be an extension of C, to enhance its capabilities and add object-oriented programming capabilities. It is therefore considered an intermediate level programming language.

Like C, C++ compiles to machine code, you can use it on any platform and you have to manage the memory manually. But unlike C, C++ is strongly typed.

Performance is comparable to C.

C# 

Created by a team at Microsoft led by Anders Hejlsberg in 2002
C# (pronounced C sharp) was also created as an extension of C, in the .NET Framework. It has a high-level of abstraction and object-oriented programming abilities.

You can also use C# on any platform, but it is rarely used outside of Windows.

Unlike C and C++, you don't have to manage memory manually, C# uses a technology called Garbage collection to manage this. And C# compiles in byte-code, rather than machine code.

Conclusion

While learning C is a good thing because you will know the very basis of programming, it will be pretty difficult to master it. C++ and C# are much more modern and accessible.

They are still very popular, C and C++ seem to be slightly more appreciated than C#. You won't make a mistake choosing one over the other.


Photo by Charles Deluvio on Unsplash

Discussion (0)