C-Language

Introduction To C Language Tutorial

The ‘C’ is a general-purpose, middle-level, procedural programming language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at the Bell Labs. The ‘C’ language is a successor of the ‘B’ language which was introduced around the early 1970s. The ‘C’ was originally first implemented on the DEC PDP-11 computer in 1972. In 1978, Brian Kernighan and Dennis Ritchie produced the first publicly available description of C, now known as the K&R standard. The UNIX operating system, the C compiler, and essentially all the UNIX application programs have been written in C. C has now become a widely used professional language for the various reasons as:

  • It is easy to learn.
  • It is a Structure-oriented language.
  • It produces efficient programs.
  • It can handle low-level activities.
  • It can be compiled on a variety of computer platforms.
  • The UNIX OS was totally written in C.
  • Most of the state-of-the-art software has been implemented using C.
  • The  Linux OS and RD-BMS MySQL have been written in C.

Why use C Language?

Since here we are going to discuss of the C programs we will discuss but before I need to remind you that if you have any doubts about hardware, software, or anything you can search on my website or can get in different menu option after clear then come to here so that you can start with writing the programs. If you are ok then let’s go start with the C language programming.

  • Operating Systems.
  • Compilers.
  • Assemblers.
  • Embedded-C for Embedded System design (A subset of ‘C’).
  • Text Editors.
  • Print Spoolers.
  • Network Drivers.
  • Modern Programs.
  • Databases.
  • Language Interpreters.
  • Utilities.

Since here we are going to discuss of the C programs we will discuss but before I need to remind you that if you have any doubts about hardware, software, or anything you can search on my website or can get in different menu option after clear then come to here so that you can start with writing the programs. If you are ok then let’s go start with the C programming.

What Is Language?

Language is a medium of interaction between the two objects. It is a system of communication between any two objects either spoken or written. Humans have invented thousands of spoken languages to interact with other humans. The Birds, animals, insects, and every living creature interact in their own language. Whenever humans understood as they need help in their work without any human, they started the research and invented the machine. These machines are working for a human to help but they don’t have thinking capability to do like human. Only the machine can do the task which instructs by humans by using the electrical signals. Computers internally interact in the language of the low voltage and high voltage (known as binary). Among the different computer programming language, C language is one of them.

What is Programming Language?

The program is a set of instructions that can be written/save/download onto the flash memory of the computer. Each instruction is a command for a computer to do a small task/operation (addition, subtraction, etc.). Whenever you will turn on your computer, these programs will start running inside the computer and do the task (human task) as per the instructions are given by the user. Now we can say this is a method of the language of a computer to which the computer can understand what human wants by me or what task he wants from me to be done. So as humans are communicating with each other with different languages like Hindi, Odiya, English, etc. , the Machines are also having some languages made by a human so that the machines can also communicate with each other to work together. Through programming language, we can also communicate with the computer system. Why we are telling as programming language because normally the human need to program these instructions onto the computer so that they can start their work as per human expectation or interest. Since the computers are working with digital signals nothing but binary 1’s and 0’s, hence computers can only understand binary. These combinations of binary 0’s & 1’s are nothing but a language for computers or machines. but humans are not comfortable with the binary number system. Humans can not interact fluently with computers in the language of the 0’s and 1’s. The Programming language act as an interface between computers and humans. Programming languages are used to create programs. A computer program is intended to perform some specific tasks through the computer or to control the behavior of the computer. The C language is one of the most important languages used in computer software development. The C language is one of the programming languages in computer programming.

Using the programming language, we write instructions that the computer should perform. Instructions are usually written using the characters, words, symbols, and decimal. These instructions are the later encoded to the computer understandable language i.e. binary language. So that the computer can understand the instructions given by humans and can perform a specified task.

Thousands of the programming languages have been created to date and many are still being developed every year. Every programming language is designed for some specific purpose. Such as FORTRAN, OCaml, Haskell are best suited for scientific and numerical computations. Whereas Java, C++, C# are best suited for designing server applications, games, desktop applications, and many more.

History of Programming Language

Earlier when there was no concept of the programming languages. Computer instructions are directly given to the computer in decimal or the binary format. These instructions are given through punch cards, magnetic tapes, or the through switches. Later on, when the computer started growing, more and more programs were written day-by-day. Writing programs completely in the binary was cumbersome and error-prone. Therefore, we developed various mnemonics for different instructions. These mnemonics are in a human-readable format. Such as ADD for adding values of two registers, SUB for subtracting for two registers, JMP for the conditional controls. Now, the programs were written using mnemonics and decimal values known as an assembly language. But remember this assembly language is not the C language, so we will discuss the c language later.

The Mnemonics are short abbreviated English words used to specify computer instruction. Each instruction in binary has a specific mnemonic. They are architecture-dependent and there is a list of separate mnemonics for the different computer architectures. Mnemonics gave relief to the programmers from writing programs directly in the binary language. However, it was still a tedious work to remember the complete list of mnemonics for the various computer architectures.

Classification of Programming Languages

Since the computers are understanding only digital binary 1’s & 0’s as their language for their understanding, it was very difficult for humans always to write in the binary. We are also not interested to learn again a different difficult language for computer programming. so we started investing in programming so that the language with which we are talking to each other, we can also use this for computer programming. There are thousands of programming languages have been written to date. Each for some specific purpose. Some of the programming languages provide less or no abstraction from the hardware. Whereas some provide higher abstraction. To separate programming languages on the basis of the level of abstraction from hardware, they are classified into various categories. The Programming languages are basically classified into two main categories – Low-level language and High-level language. However, there also exists another category known as a Middle-level language. Every programming language belongs to one of these categories and sub-categories. Let’s go discuss all of these and also the C language is coming under which level.

Whenever you will write any program, you should select a language to write the program. Generally, it is divided into 3 types are:

  1. Low-Level Language.
  2. Medium-Level Language.
  3. High-Level Language.
C language level
C language level

Low-Level Language

Medium-Level Language

High-Level Language

Features Of C Programming

  • General Purpose Language
  • Procedural Language
  • Middle Level Language
  • Easy to Extend
  • Portability
  • Libraries with rich functions
  • Rich set of build-in functions
  • Statically type
  • Modularity
  • Fast and Efficient

C-Programming Compilation process

When you are writing a program in a high-level language, obviously you need to convert it into machine level language.

What is Function in C?

A function is a group of the statements that together perform a task. In C language Every program has at least one of the functions, which is main(), and all the most trivial programs can define additional functions. You can divide up your code into separate functions. You can divide up your code into separate functions. How you divide up your code among different functions is up to you, but logically the division is such that each function performs a specific task. A function declaration tells the compiler about the function’s name, return type, and parameters. A function definition provides the actual body of the function. The C standard library provides numerous built-in functions that your program can call. For example, strcat() to concatenate two strings, memcpy() to copy one memory location to another location, and many more functions. A function can also be referred to as a method or a sub-routine or a procedure, etc.

What is the Control statement in C Language?

C is a computer programming language. That means that you can use the C language to create lists of instructions for a computer to follow. C is one of the thousands of programming languages currently in use. The arithmetic operator is used for mathematical calculation these operators are the binary operator that works with integer floating-point number and every character. :Arithmetical operator are: Operator Meaning + Addition – Subtraction * Multiplication / Division % Module division. The relational operator is used to comparing two operands. Operands may be variable, constant, or expression. Operator Meaning < Is less than <= Is less than equal to > Is greater than >= Is greater than equal to == Equal to != is not equal to main(){ int a=10,b=20,c=30,d,e; d=a>b; e=b<=c; printf(“%d %d”,d,e); getch();} Output:- 01 Are used to combine (compare) two or more condition.Logical Operator are:- Operator Meaning && Logical AND || Logical OR! Logical NOT.

Control Statements Type in C Language

There are 3 types of control statements in c language.

  1. Conditional or decision control statement.
  2. Loop or iterative control statement.
  3. Jumping Control Statements.

Loop or Iterative Control Statement

Looping is the most important concept in the C-programming language. It means executing the same statement or block of statements repeatedly several times based on certain conditions. More precisely, the loop keeps on executing as long as the condition is true. It helps a lot to the programmer in saving his time and processor execution time. There are two parts of the loop such as the body of the loop and the control statement. The control statement is the condition that directs the body of the loop to execute the statement as long as the condition is true.

Why Loop Control is important?

Suppose you want to execute the message “hello India” for 100 times at one go. For which You have to write the same statement 100 times sequentially. The result of which is very time consuming and very difficult for the programmer to finish it. Most importantly, the whole program becomes bulky and confusing to understand immediately. So, the scientist added a new concept called the “loop construct concept”. It makes it easy to write reliable coding. In addition, the loop construct cuts the number of same statements and frames them into one statement to execute the output several times as per the terminating condition.

Types of Loop Control Statements in C

There are two types of loop or iterative control statements in the C programming language. one is a finite control statement and another is infinite control statement. Again the infinite control statement is categorized into two types, one is while loop and another one is the do-while loop control statement. as a result, we can say there are 3 types of loop control statements in the C programming language. To learn any of the loop control statements you need to select the below links.

  1. For Loop Control Statement.
  2. While Loop Control Statement.
  3. Do-While Loop Control Statement.

What is an Array in C?

Arrays a kind of data structure that can store a fixed-size sequential collection of elements of the same type in C language. An array is used to store a collection of the data, but it is often more useful to think of an array as a collection of variables of the same type. Instead of declaring individual variables, such as number0number1, …, and number99, you declare one array variable such as numbers and use numbers[0], numbers[1], and …, numbers[99] to represent individual variables. A specific element in an array is accessed by an index. All arrays consist of contiguous memory locations. The lowest address corresponds to the first element and the highest address of the last element. Arrays in C Declaring Arrays To declare an array in C, a programmer specifies the type of the elements and the number of the elements required by an array as follows − type arrayName [ arrays ]; This is called a single-dimensional array. The array size must be an integer constant greater than zero and type can be any valid C the data type. For example, to declare a 10-element array called the balance of the type double, use this statement.

What is Pointer in C Language?

Pointers in the C are easy and fun to learn. In C language some C programming tasks are performed more easily with pointers, and other tasks, such as dynamic memory allocation, cannot be performed without using pointers. So it becomes necessary to learn pointers to become a perfect C programmer. Let’s start learning them in simple and easy steps. A pointer is a variable whose value is the address of another variable, i.e., direct address of the memory location. Like any variable or constant, you must declare a pointer before using it to store any variable address. The general form of a pointer variable declaration is − type *var-name; Here, a type is the pointer’s base type; it must be a valid C data type and var-name is the name of the pointer variable. The asterisk * used to declare a pointer is the same asterisk used for multiplication. However, in this statement, the asterisk is being used to designate a variable as a pointer. Take a look at some of the valid pointer declarations.

What is String in C Language?

In C language, strings are actually one-dimensional array of the characters terminated by a null character ‘\0’. Thus a null-terminated string contains the characters that comprise the string followed by a null. The following declaration and initialization create a string consisting of the word “Hello”. To hold the null character at the end of the array, the size of the character array containing the string is one more than the number of the characters in the word “Hello.”

What is Structure and Union in c?

In C language, Arrays allow defining types of variables that can hold several data items of the same kind. Similarly, the structure is another user-defined data type available in C that allows combining data items of different kinds. Structure in c language is a user-defined datatype that allows you to hold a different type of elements. Each element of the structure is called a member. It works as a template in C++ and class in Java. You can have different types of elements in it. It is widely used for the store student information, employee information, product information, book information, etc.

File Handling in C?

File Handling in C language is used to the open, read, write, search, or close the file. It is used for permanent storage. A file represents a sequence of the bytes, regardless of it being a text file or a binary file. A c programming language provides access to the high-level functions as well as low level (OS level) calls to the handle file on your storage devices. This chapter will take you through to the important calls for file management.

What is Pre-processor in C?

The C Preprocessor is not a part of the compiler but is a separate step in the compilation process. In simple terms, a C Preprocessor is just a text substitution tool and it instructs the compiler to do required pre-processing before to the actual compilation. We’ll refer to the C Preprocessor as CPP. All preprocessor commands begin with the hash symbol (#). It must be the first nonblank character, and for the readability, a preprocessor directive should begin in the first column. The following section lists down all the important preprocessor directives 

Subscribe
Notify of
4 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Scroll to Top