C Constants
Overview
In this tutorial, we will learn about C constants. Constants are read-only variables. The value of the constant cannot be changed in the program. C allows two ways to define the constants in the program
- const keyword
- #define directive
const keyword
The general syntax to define a constant using the const keyword is as follows:
const <data_type> <constant_name> = <read_only_Value>;
<data_type> const <constant_name> = <read_only_Value>;
Example
const int ROWS=10;
int const ROWS=10;
We can use the const keyword before or after the datatype.
#define directive
The general syntax to define using the #define directive is as follows:
#define <constant_name> <readOnly_Value>
Example
#define COLUMNS 10
This #define directive instructs the C compiler to replace the COLUMNS with value 10. To increase code readability constant names are defined in UPPERCASE.
| C Constant Action | Yes/ No |
| Initialize the constant with an initial value | ✅
|
| Read the constant value in the program | ✅ |
| Modify/Change the constant value in the program | ❌
|
Example
In this example, we will define a floating-point value as constant using the #define preprocessor directive. In the function, we will use the value to calculate the area of the circle.
#define PI 3.14159265
C Program
/**
*************************************************
* Program Description:
* C Constants Demo
* Filename: constants.c
* C Tutorials - www.TestingDocs.com
************************************************
*/
#include<stdio.h>
#define PI 3.14159265
/*Function declaration*/
void area(const float radius);
int main()
{
/*local variable */
float radius=0.0;
printf("Enter the circle radius (cm):= \n");
scanf("%f",&radius);
area(radius); // Function Call
return 0;
}
// Function definition
void area(const float radius)
{
float circleArea=0.0;
circleArea = PI*radius*radius; // use the constant value PI
printf("Area of Circle = %f cm^2\n",circleArea);
}

Notice that we have used the constant value on the left side of the assignment operator( = ).
The compiler replaces the PI name with the value in the #define directive.
circleArea = PI*radius*radius;
So this statement becomes:
circleArea = 3.14159265*radius*radius;
—
C Tutorials
C Tutorials on this website can be found at: