×

What is required in each C Program?

Each C program must require one function, i.e., main() function. It is because when we execute the C program, C compiler looks for the main() function, and from here only the execution gets started. Other than main() function, there is a specified structure of C program that programmers should follow.

Each programming language have a specified syntax and structure, and while writing the code we have to follow that structure. If we don’t follow it, we might get trouble and several errors or bugs while executing the code.

The basic required structure of a C program is as follows:

  • Pre-processor Commands
  • main() function
  • Variables
  • Statements & Expressions

1. Pre-processor Commands:

When a C program is compiled by compiler, a software called as pre-processor performs a procedure on the source code.

Pre-processor directives are a type of commands used in pre-processor; these commands start with the symbol #.

Pre-processor resolves statements that begin with # and removes them as well.

#include<stdio.h>

Above line is a pre-processor directive that instructs the compiler to include the standard input output header files in the program before moving on to the actual compilation, and it contains the definitions of all standard input and output functions.

Pre-processor Directives:

There are four categories into which the pre-processor directives are broken down, which are as follows:

  1. Macros
  2. File Inclusion
  3. Condition compilation
  4. Additional Directives

Macros:

There are two different kinds of macros: one that accepts an argument and the other that does not. Using the pre-processor command #define, we may define a macro in C.

Syntax:

#define Name Replacement_text

Name: It is also called macro template.

Replacement_text: It is known as macro expansion.

A macro name is typically written in capital letters.

File Inclusion:

The #include command is used for file inclusion.

Syntax:

#include<fileName>

The filename's contents will be changed at the point where the directive is written. We can include the header files in the program by utilizing the file inclusive directive.

Condition compilation:

When deciding whether to compile a particular set of code lines, conditional compilation is utilised.

It employs directives like "if," "elif," "else," and "endif."

Additional Directives:

There are two important directives are as follows:

  • #undef:  A declared macro variable can be undefined using the #undef
  • #pragma: A C program uses #pragma to call functions both before and after the main function.

main() Function:

The start of the programming's actual execution occurs at this moment.

This serves as the starting point for all C programs.

The main() function receives immediate control when execution begins.

It is a Pre- defined function in C library.

The main() calls all predefined and user-defined functions directly or indirectly.

This is the mandatory function. Without this function, it would not be possible for our code to run because it serves as the entrance point.

The memory location defined by main () is where the compiler begins reading a programming instruction. 

Numerous operating system applications are stored in computer memory, and to distinguish each one from the others, the main () function of each program's memory address is employed. 

The beginning of main () is defined by a specified memory location.

int main()

int is a Keyword in C language.

There is no parameter in this main function.

int main() denotes that this method will only return values of the integer type. With a return statement like “return 0,” type of value is returned.

void main()

void is a keyword in C language.

No parameters are passed to this main function.

void main() denotes that this method will return nothing. This void main() does not require a return statement like “return 0”.

int main(int argc, char *argv)

This main function is called command-line arguments.

There are 2 parameters passed to this main function which are integer(int argc) and character(char *argv) data type.

  • The integer type argc means ARGuments counts, which gives the number of command-line arguments, which also includes the program's name.
  • The character type argv means ARGument Vector, which is known as a character pointer array, and this argv also holds pointers to strings.
int main(void) 

int main(void) displays that it does not accept any arguments.

The main function will accept any number of arguments if the void is removed from the brackets.

Void expresses explicitly that main may be called here without any arguments.

void main(void)

like void main(), this also does not return any values.

int main(void) also displays that it does not accept arguments.

Unlike the void main(), this main does not accept multiple parameters.

Variables:

Variable is the name of the memory place where we can store any value, such as an int, char, float, or double.

Variables are crucial to computer programming because they allow us for creating adaptable programs. 

A programmer can represent data in a program using variables instead of simply entering it.

Variables may represent character strings, memory addresses, or numeric values.

A program requires memory to store data while it is running.

It could be a number, a response to a query, or something else. Declaring a variable is required for this.

The variables are replaced with actual data when the program is run.

Statements & Expressions:

A statement is a directive issued to a computer that tells it to carry out a specific task, like displaying something on the screen or gathering input. There are many statements that make up a computer program.

The control statements enable users to select the sequence in which the instructions in a program should be executed.

A group of variables and constants are joined by one or more operators to form an expression. An expression is made up of one or more operators as well as one or more operands.

A program's tasks are carried out using expressions. Expressions can be used to compute values for variables, assign values to variables, and guide the flow of a program's execution, among other things.

Program:

#include <stdio.h>
int main()
{
	int a,b ,sum;
	sum=0;
	printf("Enter the value of a and b:\n");
	scanf("%d %d", &a,&b);
	sum = a+b;
	printf("The Sum of a and b is : %d",sum);
	return 0;
}

Explanation:

  • Here we have used file Inclusion Preprocessor Directives which is #inlcude<stdio.h>
  • <stdio.h> instructs the compiler to include the standard input output header files in the program before moving on to the actual compilation, which contains the definitions of all standard input and output functions.
  • Main() function serves as starting point for all c program.
  • int main() denotes that this method will only return values of the integer type. With a return statement like “return 0,” this type of value is returned.
  • We have three variables a, b, and sum which all have int data type.
  • “int a, b, and sum” is a declaration statement.
  • Post the declaration statement, all further statements are action statement except “return 0”.
  • We get our sum using printf() function.

 Program Output:

What is required in each C Program

Related Topics

Character Class Tests in C

Introduction The <ctype.h> is a header file in C which is used to declare functions for testing characters. This header file of the C standard library is used to declare multiple...

4 minutes read.

String in C

String is a collection of character or group of characters. In array, string of character is terminated by a null value “\0” and enclose between double quote. We can declare...

2 minutes read.

Kruskal algorithm in C

Given a weighted graph, Kruskal's algorithm generates a spanning tree with the lowest possible weights. Start by creating an edge list for the given graph, including the weights. Sort the...

3 minutes read.

Difference between Pre-increment and Post-increment in C

Increment operators are the kind of operators that are used to increment the cost of the operand by way of 1. In different words, the increment operator is an operator...

4 minutes read.

Pre-increment and Post-increment in C

The rich set of operators is supported by the c language. In c there are several operators used. The mathematical operations in the programming language are done with the operators...

4 minutes read.

What is 2s Complement in C?

The complement of 2s in C is generated from the 1s in C. As we know, the 1s complement of a binary number is generated by converting bit 1 to...

4 minutes read.

Types of Array in C

What is an Array? One value can be stored in a variable at once. How many variables will you need if you have 100 values? Well, the answer isn't 100. It...

14 minutes read.

Types of Pointers in C

Pointers in C A pointer is a variable and this variable contains the address of another variable, i.e it’s a variable which has the address of another variable as its value....

4 minutes read.

For Loop in C Programming Examples

The Syntax of the For Loop for (initialization statement; termination condition; modifying (increment/ decrement) statement) {       /* main body of the For loop */     } In for loop, the initialization command...

6 minutes read.

C program to find factorial of a number using Recursion

What does the term "Factorial of a Number" mean? In mathematics, factorial is the product of all positive integers that are less than or equal to a certain positive integer, and...

2 minutes read.

C vs Java Strings

String in C In C, we can define a string as a bunch of characters. A character array is distinguished from a string by the presence of the special character '\0'...

5 minutes read.

C program to compare the two strings

C program to compare the two strings Strings can be compared either by using the string function or without using string function. First, we will look at how we can compare the strings with...

4 minutes read.

Storage class in C

Storage class in C defines the scope, the visibility, and the lifetime of variables and functions. In other words, storage classes are used to describe the features of variables and...

3 minutes read.

Pointers in C

Pointers in C: In the C programming language, a pointer is a pointer variable that points to the address of the other variable. It also stores the address of the...

4 minutes read.

fork() in C

Introduction To create a new function in the system, there is a need for a system call, i.e. fork system call. It is also known as the child process. These child...

2 minutes read.

What is String Comparison in C

String comparison is the process of comparing two strings (sequences of characters) to determine if they are equal, or if one is greater or less than the other. The comparison...

4 minutes read.

Pyramid Pattern in C

Pyramid Pattern in C A pyramid is a polyhedron created by connecting a base that will be a polygon, and all the lateral faces are triangles. All the bases are connected...

5 minutes read.

Merge and Merge sort with example in C

Assume we have two ordered Integer arrays, a[] and b[]. If we wish to combine them into another ordered array, such as c[], we can use the following straightforward technique. Compare...

3 minutes read.

Recursion in C

Recursion is a programming technique that allows the programmer to call the function within the same function. The function which calls the same function is known as recursive function but a...

1 minute read.

tolower() Function in C

The tolower() capability is characterized in the ctype.h header document. In the event that the person passed is a capitalized letter set, the tolower() capability switches capitalized letters in order...

3 minutes read.