Skip to content

01_1 why learn c

Fábio Gaspar edited this page Feb 18, 2019 · 1 revision

Introduction to C

A bit of History

C was developed by Dennis Ritchie between 1969 and 1973. It's an imperative programming language, which means it uses statements to change the programs state. It's also a procedural programming language because the program is built from one or more functions (a function is the same as a procedure, it executes commands, but in addition, it returns a value).

C and Assembly Language

The C language is very flexible and it has many applications. It's a step up from assembly language, which it is practically a human translation of machine code. While assembly language can provide speed and maximum control of the program, C provides portability (assembly language is specific to a particular computer architecture). Therefore, C is a very powerful language and gives programmers maximum control and efficiency. It has a wide range of applications such as apps/games development, embedded hardware programming, operating systems, etc.


Fig.1: High-level vs. low-level programming languages

Languages Based on C

Despite its advanced and low-level uses, C is not that difficult to learn, even if it's your first programming language. This gives you an idea regarding how things work under the hood without being too overwhelming. Moreover, the fact that several higher level languages are based on C, such as C++, C#, Objective-C and even Java, once you dominate C you can easily learn other languages.

Source: Wikipedia, C (programming language)