Symbolic Constants in C

A symbolic constant can be defined as a constant that is represented by a name (symbol) in a program. Like a literal constant, a symbolic constant cannot undergo changes. Whenever the constant’s value is needed in the program, the name of the constant is used in the same way as the name of a variable is used to access its value.

There are two methods in C for defining a symbolic constant:

Using the #define directive

Using the const keyword

We know that PI is a constant with value 3.1416 and it is defined in C by using the const keyword in the following way:

const float PI = 3.1416; /* defining PI as a constant */
Here, since we’ve defined PI as a const, any subsequent attempts to write or modify the value of PI are not allowed in the entire program.const float PI = 3.1416;PI = 300; /* This is an error. const cannot be manipulated. */
The following code segment illustrates the use of symbolic constant (defined by using #define directive) in a C program:#define PI 3.1416 /* PI has been defined as a symbolic constant in this line */... other lines of code ...area = PI * (radius) * (radius);... other lines of code ...
The following program shows the use of symbolic constant to compute the area of a circle:/* A program to compute the area of a circle */#include #define PI 3.1416int main() {float area, radius;printf("Enter the radius of the circle:");scanf("%f", &radius);area = PI * radius * radius;printf("\n The area of the circle with radius %f is: %f", radius, area);return 0;}
The output of the program is:Enter the radius of the circle:3The area of the circle with radius 3.000000 is:29.608951
Let us see another program to depict the use of symbolic constant to compute the area and circumference of a circle./* A program to compute the area and circumference of a circle */#include int main() {float area, circumference, radius;const float PI = 3.1416;printf("Enter the radius of the circle:");scanf("%f", &radius);area = PI * radius * radius;circumference = 2 * PI * radius;printf("\n The area and circumference of the circle with radius %f are: %f and %f respectively.", radius, area, circumference);return 0;}
The output of the program is:Enter the radius of the circle:5The area and circumference of the circle with radius 5.000000 are: 78.540001 and 31.415998 respectively.