C Programming Language Tutorial
The C Language is developed by Dennis
Ritchie for creating system applications that directly interact with the
hardware devices such as drivers, kernels, etc.
C programming is considered
as the base for other programming languages, that is why it is known as mother
language.
It
can be defined by the following ways:
- Mother language
- System programming language
- Procedure-oriented programming
language
- Structured programming language
- Mid-level programming language
1) C as a mother language
C
language is considered as the mother language of all the modern programming
languages because most of the compilers, JVMs, Kernels, etc. are
written in C language, and most of the programming languages follow C
syntax, for example, C++, Java, C#, etc.
It
provides the core concepts like the array, strings, functions, file handling,
etc. that are being used in many languages like C++, Java, C#,
etc.
2) C as a system programming language
A system programming language is used
to create system software. C language is a system programming language because
it can be used to do low-level programming (for example driver and kernel). It
is generally used to create hardware devices, OS, drivers, kernels, etc. For
example, Linux kernel is written in C.
It can't be used for internet
programming like Java, .Net, PHP, etc.It can't be used for internet programming
like Java, .Net, PHP, etc.
3) C as a procedural language
A procedure is known as a function, method,
routine, subroutine, etc. A procedural language specifies a series of steps for
the program to solve the problem.
A procedural language breaks the program into
functions, data structures, etc.
C is a procedural language. In C, variables and function prototypes must be declared before being used.
4) C as a structured programming language
A structured programming language is a subset
of the procedural language. Structure means to break a program into parts or
blocks so that it may be easy to understand.
In the C language, we break the program into
parts using functions. It makes the program easier to understand and modify.
5) C as a mid-level programming language
C is considered as a middle-level language
because it supports the feature of both low-level and high-level languages. C
language program is converted into assembly code, it supports pointer
arithmetic (low-level), but it is machine independent (a feature of
high-level).
A Low-level language is specific to one
machine, i.e., machine dependent. It is machine dependent, fast to run. But it
is not easy to understand.
A High-Level language is not specific to one
machine, i.e., machine independent. It is easy to understand.
C Program
In this tutorial, all C programs are given
with C compiler so that you can quickly change the C program code.
File: main.c
#include <stdio.h>
void main()
{
printf("Hello C Programming\n");
return 0;
}
printf()
and scanf() in C
The printf() and scanf() functions are used
for input and output in C language. Both functions are inbuilt library
functions, defined in stdio.h (header file).
printf() function
The printf() function is used for output. It
prints the given statement to the console.
The syntax of printf() function is given
below:
printf("format
string",argument_list);
The format string can be %d (integer), %c
(character), %s (string), %f (float) etc.
scanf() function
The scanf() function is used for input. It
reads the input data from the console.
scanf("format
string",argument_list);
Variables
in C
A variable is a name of the memory location.
It is used to store data. Its value can be changed, and it can be reused many
times.
It is a way to represent memory location
through symbol so that it can be easily identified.
Let's see the syntax to declare a variable:
type variable_list;
The example of declaring the variable is
given below:
int a;
float b;
char c;
Here, a, b, c are variables. The int, float,
char are the data types.
We can also provide values while declaring
the variables as given below:
int
a=10,b=20;//declaring 2 variable of integer type
float f=20.8;
char c='A';
Rules
for defining variables
A variable can have
alphabets, digits, and underscore.
A variable name can
start with the alphabet, and underscore only. It can't start with a digit.
No whitespace is
allowed within the variable name.
A variable name
must not be any reserved word or keyword, e.g. int, float, etc.
Valid
variable names:
int a;
int _ab;
int a30;
Invalid
variable names:
int 2;
int a b;
int long;
Types
of Variables in C
There are many types of variables in c:
·
local
variable
·
global
variable
·
static
variable
·
automatic
variable
·
external
variable
Local
Variable
A variable that is declared inside the
function or block is called a local variable.
It must be declared at the start of the
block.
void function1()
{
int x=10;//local variable
}
You must have to initialize the local
variable before it is used.
Global
Variable
A variable that is declared outside the
function or block is called a global variable. Any function can change the
value of the global variable. It is available to all the functions.
It must be declared at the start of the
block.
int value=20;//global variable
void function1()
{
int x=10;//local variable
}
Static
Variable
A variable that is declared with the static
keyword is called static variable.
It retains its value between multiple
function calls.
void function1()
{
int x=10;//local variable
static int y=10;//static variable
x=x+1;
y=y+1;
printf("%d,%d",x,y);
}
If you call this function many times, the
local variable will print the same value for each function call, e.g, 11,11,11
and so on. But the static variable will print the incremented value in each
function call, e.g. 11, 12, 13 and so on.
Automatic
Variable
All variables in C that are declared inside
the block, are automatic variables by default. We can explicitly declare an
automatic variable using auto keyword.
void main()
{
int x=10;//local variable (also
automatic)
auto int y=20;//automatic variable
}
External
Variable
We can share a variable in multiple C source
files by using an external variable. To declare an external variable, you need
to use extern keyword.
myfile.h
extern int x=10;//external variable (also
global)
Comments
Post a Comment