Constants vs Variables in C language
Constant
As the name suggests the name constants is given to such variables or values in C programming language which cannot be modified once they are defined. They are fixed values in a program. There can be any types of constants like integer, float, octal, hexadecimal, character constants etc. Every constant has some range. The integers that are too big to fit into an int will be taken as a long. Now there are various ranges that differ from unsigned to signed bits. Under the signed bit, the range of an int varies from -128 to +127 and under the unsigned bit, int varies from 0 to 255.
Example:
#include <stdio.h> // Constants #define val 10 #define floatVal 4.5 #define charVal 'G' // Driver code int main() { printf("Integer Constant: %d\n", val); printf("Floating point Constant: %f\n", floatVal); printf("Character Constant: %c\n", charVal); return 0; } |
Integer Constant: 10 Floating point Constant: 4.500000 Character Constant: G
Variable
A variable in simple terms is a storage place which has some memory allocated to it. Basically, a variable used to store some form of data. Different types of variables require different amounts of memory and have some specific set of operations which can be applied to them.
Variable Declaration:
A typical variable declaration is of the form:
type variable_name; or for multiple variables: type variable1_name, variable2_name, variable3_name;
A variable name can consist of alphabets (both upper and lower case), numbers and the underscore ‘_’ character. However, the name must not start with a number.
Example:
#include <stdio.h> int main() { // declaration and definition of variable 'a123' char a123 = 'a'; // This is also both declaration // and definition as 'b' is allocated // memory and assigned some garbage value. float b; // multiple declarations and definitions int _c, _d45, e; // Let us print a variable printf("%c \n", a123); return 0; } |
a
Difference between variable and constant
| Constants | Variable |
|---|---|
| A value that can not be altered throughout the program | A storage location paired with an associated symbolic name which has a value |
| It is similar to a variable but it cannot be modified by the program once defined | A storage area holds data |
| Can not be changed | Can be changed according to the need of the programmer |
| Value is fixed | Value is varying |
Recommended Posts:
- Constants in C
- Data type of character constants in C and C++
- Variables and Keywords in C
- Static Variables in C
- Implicit initialization of variables with 0 or 1 in C
- Can Global Variables be dangerous ?
- Initialization of static variables in C
- Operations on struct variables in C
- How are variables scoped in C - Static or Dynamic?
- Initialization of variables sized arrays in C
- What are the default values of static variables in C?
- Initialization of global and static variables in C
- How will you show memory representation of C variables?
- C Program to print environment variables
- Swap two variables in one line in C/C++, Python, PHP and Java
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



