Programming C – Constant

  • C Constants are also like normal variables. But, only difference is, their values can not be modified by the program once they are defined.
  • Constants refer to fixed values. They are also called as literals
  • Constants may be belonging to any of the data type.
  • Syntax:

const data_type variable_name; (or) const data_type *variable_name;

TYPES OF C CONSTANT:

  1. Integer constants
  2. Real or Floating point constants
  3. Octal & Hexadecimal constants
  4. Character constants
  5. String constants
  6. Backslash character constants
Constant typedata type (Example)
Integer constantsint (53, 762, -478 etc )
unsigned int (5000u, 1000U etc)
long int, long long int
(483,647 2,147,483,680)
Real or Floating point constantsfloat (10.456789)
doule (600.123456789)
Octal constantint (Example: 013 /*starts with 0 */)
Hexadecimal constantint (Example: 0x90 /*starts with 0x*/)
character constantschar (Example: ‘A’, ‘B’, ‘C’)
string constantschar (Example: “ABCD”, “Hai”)

RULES FOR CONSTRUCTING C CONSTANT:

1. INTEGER CONSTANTS IN C:
  • An integer constant must have at least one digit.
  • It must not have a decimal point.
  • It can either be positive or negative.
  • No commas or blanks are allowed within an integer constant.
  • If no sign precedes an integer constant, it is assumed to be positive.
  • The allowable range for integer constants is -32768 to 32767.
2. REAL CONSTANTS IN C:
  • A real constant must have at least one digit
  • It must have a decimal point
  • It could be either positive or negative
  • If no sign precedes an integer constant, it is assumed to be positive.
  • No commas or blanks are allowed within a real constant.
3. CHARACTER AND STRING CONSTANTS IN C:
  • A character constant is a single alphabet, a single digit or a single special symbol enclosed within single quotes.
  • The maximum length of a character constant is 1 character.
  • String constants are  enclosed within double quotes.
4. BACKSLASH CHARACTER CONSTANTS IN C:
  • There are some characters which have special meaning in C language.
  • They should be preceded by backslash symbol to make use of special function of them.
  • Given below is the list of special characters and their purpose.
Backslash_characterMeaning
\bBackspace
\fForm feed
\nNew line
\rCarriage return
\tHorizontal tab
\”Double quote
\’Single quote
\\Backslash
\vVertical tab
\aAlert or bell
\?Question mark
\NOctal constant (N is an octal constant)
\XNHexadecimal constant (N – hex.dcml cnst)
HOW TO USE CONSTANTS IN A C PROGRAM?

We can define constants in a C program in the following ways.

  1. By “const” keyword
  2. By “#define” preprocessor directive

Please note that when you try to change constant values after defining in C program, it will through error.

1. EXAMPLE PROGRAM USING CONST KEYWORD IN C:
#include<stdio.h>
void main()
{
const int height = 100; /int constant/
const float number = 3.14; /Real constant/
const char letter = 'A'; /char constant/
const char letter_sequence[10] = "ABC"; /string constant/
const char backslash_char = '\?'; /special char cnst/
printf("value of height :%d \n", height );
printf("value of number : %f \n", number );
printf("value of letter : %c \n", letter );
printf("value of letter_sequence : %s \n", letter_sequence);
printf("value of backslash_char : %c \n", backslash_char);
}

OUTPUT:

value of height : 100
value of number : 3.140000
value of letter : A
value of letter_sequence : ABC
value of backslash_char : ?
2. EXAMPLE PROGRAM USING #DEFINE PREPROCESSOR DIRECTIVE IN C:
#include<stdio.h>
#define height 100
#define number 3.14
#define letter 'A'
#define letter_sequence "ABC"
#define backslash_char '\?'
void main()
{
printf("value of height : %d \n", height );
printf("value of number : %f \n", number );
printf("value of letter : %c \n", letter );
printf("value of letter_sequence : %s \n",letter_sequence);
printf("value of backslash_char : %c \n",backslash_char);
}
OUTPUT:
value of height : 100
value of number : 3.140000
value of letter : A
value of letter_sequence : ABC
value of backslash_char : ?
Follow Us On