So as usual like everyone I like to start these tutorials with very basic questions like what is C/C++? What are compilers? and many others stuff like these. Because this is what you should know before getting start C/C++. These are just basic information about C/C++ and things that you should know before start.

What is C?

C is a procedural language developed by Dannis Ritchie at AT and T’s Bell Laboratories in between 1969 and 1973. It’s a structured language. Due to its simplicity, reliability and easy to use it became popular so quick. It replaced all languages of that time like ALGOL, PL/I etc. A question arises that why are we learning C programming language when it is superseded by languages like C++, C# and JAVA?

In my opinion C++, C#, JAVA, JavaScript and many other languages that are introduced in this generation or called itself powerful language are borrowed directly and indirectly from C. So, one should know basic before learning OOP or like these subjects.

In my opinion still, C is the most powerful language I’ve learned. According to my sir he used to say that “C and C++ are those languages in which what you can think is what you can do through it.”

Unix is developed using C language. C language is used to develop software that are used in embedded systems like Oven, Washing machine etc. The primary implementations of CPython, Perl 5, and PHP are all written in C.

What is C++?

C++ is an object-oriented language developed by Bjarne Stroustrup at Bell Laboratories in 1979. Now what does OOP (Object Oriented Language) means? We’ll discuss this later. C++ is adopted from C language also known as “C with Classes”. C++ includes many new features that was not present in C. In short “any correct statement in C is also correct statement in C++ but reverse is not true”.

C++ used in embedded systems, also used to create system softwares like device drivers etc. or application softwares. C++ is also used to create game.

What is Compiler?

As you know computer can only understand machine language so it is necessary to communicate with computer using machine language. We have two options we can learn machine language that is way difficult because machine language varies from machine to machine and that’ll become difficult to learn all code in machine language.
Option number 2 like if Chinese president visits Pakistan or any country he used to communicate with Pakistani president by a translator which know both language Urdu and Chinese. His/her job is to translate Urdu into Chinese or vice versa. He/She know both languages.

Likewise, a compiler works. Compiler is a software that basically used to translate what you written in other language into machine language. Every language has its own compiler and it can only translate that language into machine language i.e. Assembler can only translate assembly language, C compiler can only translate C language etc.

What is IDE?

IDE stands for integrated Development Environment. As name suggest it’s an environment used to developed a program. It integrates compiler and text editor and give programmer different facilities to write, edit or build a code.

Many IDEs are available for C mostly used IDE is Turbo C but I recommend you not to use it because it is now outdated. You should use modern IDEs but that doesn’t matter, the thing which matter is how sharp your brain is to create or understand a logic. I recommend you to download GCC compiler from here.

IDEs are only here to provide you some extra features that can help you write the code. They’ll never help you to build logics no one can help you in it. It’s up to you how you can response to a problem? how capable is your brain to solve that problem?

Man is still the most extraordinary computer of all. — John F. Kennedy