## Part 1: Introduction to C Programming
Hello hello hello guys, How are you. GDR is here,
Well, guys! Today, we are going to talk about C Programming Language.
You might already know a little about C, or maybe you have heard its name somewhere. But before we start writing code, we need to understand what C actually is, why it was created, and why people still use it after so many years.
And yes, before someone asks, no, C is not the third programming language ever created just because it comes after A and B. Programming languages do not follow the alphabet like school attendance.
So, let's start from the beginning.
Imagine you go to an ATM to withdraw some money. You insert your card, enter your PIN, select an amount, and suddenly the machine gives you cash.
Now, wait a minute.
How does the ATM know what to do? How does it read your input, check your account, and tell the machine to give you money?
Is there a tiny employee sitting inside the ATM, working day and night without salary?
No, guys. Thankfully, even computers do not have to deal with unpaid internships.
An ATM uses hardware and software working together. Its software follows instructions, processes information, and communicates with the machine's hardware through the required systems and interfaces.
Programming languages help developers write those instructions.
And one of the languages that has played a very important role in building computer software and systems is C.
Let's understand it properly
## 2. What Is C Language?
First, let's look at a simple definition.
Definition: C is a general-purpose, procedural programming language developed by Dennis Ritchie at Bell Laboratories in the early 1970s.
Now, let's break this definition into simple parts.General-Purpose Language
General purpose means that a language can be used to create different types of programs instead of being limited to just one specific task.
For example, C can be used to develop:
Operating system components
Compilers
Embedded systems
Command-line tools
System utilities
Performance-critical software
In simple words, C is not a language that can only make calculators or print your name on a screen.
You can build much more with it.
However, this does not mean C is the best choice for every project. If you want to build a modern website, JavaScript is usually more suitable for the frontend. If you want to work with data or artificial intelligence, Python may be easier to use.
Every language has its own strengths.
Do not become that person who fights with everyone because their favourite programming language is supposedly better than every other language.
Bro, it is a programming language, not your relationship partner.Procedural Programming Language
Now, what does procedural mean?
Let's say you want to make Maggi.
First, you take a pan. Then you add water. Next, you heat the water, add the noodles and masala, and wait until everything is cooked.
You follow a series of steps to complete a task.
Procedural programming follows a similar idea. We write instructions that tell the computer what to do, step by step.
For example, if you want to calculate the sum of two numbers, your program might:
Take two numbers as input.
Add the numbers.
Display the result.
Simple, right?
C also allows us to divide programs into smaller parts called functions. This makes programs easier to understand, reuse, and maintain.
Think of functions as different workers in a company. One worker handles calculations, another handles input, and another displays results.
Unlike some companies, these workers do exactly what their instructions tell them to do.
Well, most of the time. Sometimes your code still refuses to work, and suddenly you start questioning your career choices.
That is programming, guys.
[html:JTNDIS0tJTIwU0FOREJPWF9TVEFSVCUyMC0tJTNFJTBBJTNDaWZyYW1lJTIwd2lkdGglM0QlMjI5OTElMjIlMjBoZWlnaHQlM0QlMjI1NTclMjIlMjBzcmMlM0QlMjJodHRwcyUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRmVtYmVkJTJGeEoza2VDUU1fVUElMjIlMjB0aXRsZSUzRCUyMkludHJvZHVjdGlvbiUyMHRvJTIwQyUyMFByb2dyYW1taW5nJTIwTGFuZ3VhZ2UlMjAlN0MlMjBXaGF0JTIwaXMlMjBDJTIwYW5kJTIwV2hhdCUyMERvZXMlMjBJdCUyMERvJTNGJTIyJTIwZnJhbWVib3JkZXIlM0QlMjIwJTIyJTIwYWxsb3clM0QlMjJhY2NlbGVyb21ldGVyJTNCJTIwYXV0b3BsYXklM0IlMjBjbGlwYm9hcmQtd3JpdGUlM0IlMjBlbmNyeXB0ZWQtbWVkaWElM0IlMjBneXJvc2NvcGUlM0IlMjBwaWN0dXJlLWluLXBpY3R1cmUlM0IlMjB3ZWItc2hhcmUlMjIlMjByZWZlcnJlcnBvbGljeSUzRCUyMnN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4lMjIlMjBhbGxvd2Z1bGxzY3JlZW4lM0UlM0MlMkZpZnJhbWUlM0UlMEElM0MhLS0lMjBTQU5EQk9YX1NFUCUyMC0tJTNFJTBBJTBBJTNDIS0tJTIwU0FOREJPWF9TRVAlMjAtLSUzRSUwQSUwQSUzQyEtLSUyMFNBTkRCT1hfRU5EJTIwLS0lM0U=]
## Who Created C Language?
C was developed by
Dennis Ritchie at Bell Laboratories in the early 1970s. It was created to help develop the UNIX operating system.
Before C, programmers used other languages, including assembly language and earlier programming languages such as B.
Assembly language can work very closely with a computer's hardware, but it can be difficult to write and maintain for large projects.
C provided a useful balance. It allowed programmers to write code in a more readable form while still giving them considerable control over memory and system operations.
This made C very useful for system programming.When Was C Created?
C was developed around 1972, although its development took place over a period of time.
It grew from earlier languages, especially B, which was influenced by BCPL.
Here is a simplified timeline:
BCPL: Developed in the 1960s.
B: Developed around 1969.
C: Developed in the early 1970s.
C became widely known through the book
The C Programming Language, written by Brian Kernighan and Dennis Ritchie and published in 1978.
C is an old language, but old does not mean useless.
Your grandparents may not know how to use every modern application, but that does not mean their experience has no value.
Similarly, C is still useful because many important software systems depend on the kind of control and performance it provides.
## Is C a High-Level or Low-Level Language?
This is an important question, and beginners often get confused here.
C is generally classified as a
high-level programming language, but it also provides low-level capabilities.
Wait, what? High-level and low-level together?
Yes. Let me explain.
A high-level language allows us to write instructions in a form that is easier for humans to understand than raw machine instructions.
For example, in C, you can write:
int a = 10;
int b = 20;
printf("%d", a + b);This code adds two numbers and displays the result.
You do not need to manually write every machine instruction required to perform the addition.
However, C also gives programmers control over memory through pointers, allows direct manipulation of individual bits, and supports operations that are useful in system programming.
For example, pointers allow us to work with memory addresses.
This makes C more flexible than many languages that hide most memory details from the programmer.
But remember, C does not automatically give you unrestricted access to every hardware device. Actual hardware access depends on the operating system, processor, permissions, and the environment in which the program runs.
In simple words: C makes programming easier than writing everything in machine code, while still giving programmers significant control over how their programs use memory and system resources.
That balance is one of the reasons C is so important.
## Motivation of the day

If you ever fail in your life then always remember "Vats"
A single sheet of your paper cannot decide your future
But if you somehow pass then always make realise to people that
Education is the key of success