variables in c

Variables are the name of memory locations where we store our data. When C program in under execution, the operating system allocates memory to store instructions of the program and also allocates space to the store data.

Well, in other words, you can say that ” Variables in c is nothing but a name given to a storage area that our programs can manipulate”. Each variable in C has a specific type, which determines the size and layout of the variable’s memory. Variables also determine the range of values that can be stored within that memory and the set of operations that can be applied to the variable.

A programmer has to decide how much space he is required with to store data. He also specifies the names of memory locations in his program code. These names are called variables. These locations can contain integer, real and character constants.

We can change its value according to the programming requirement.

Rules for constructing variable name :

  • The variable name may contain alphabets, digits or underscore.
  • No other symbol or blank in allowed.
  • A valid variable name never starts with a digit.

Buy our courses At Lowest Price

The name of a variable in c can be composed of letters, digits, and the underscore character. It must begin with either a letter or an underscore. Upper and lowercase letters are distinct because C is case-sensitive. Based on the basic types explained in the previous chapter, there will be the following basic variable types  :

Variables infographics

Share this Image On Your Site

C programming language also allows defining various other types of variables, which we will cover in subsequent chapters like Enumeration, Pointer, Array, Structure, Union, etc. For this chapter, let us study only basic variable types.

Have You enjoyed the article on variables in c! 

Variable Definition in C

A variable definition tells the compiler where and how much storage to create for the variable. A variable definition specifies a data type and contains a list of one or more variables of that type as follows −

type variable_list;

Here, type must be a valid C data type including char, w_char, int, float, double, bool, or any user-defined object; and variable_list may consist of one or more identifier names separated by commas. Some valid declarations are shown here −

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

The line int i, j, k; declares and defines the variables i, j, and k; which instruct the compiler to create variables named i, j and k of type int.

Variables can be initialized (assigned an initial value) in their declaration. The initializer consists of an equal sign followed by a constant expression as follows −

type variable_name = value;

Some examples are −

extern int d = 3, f = 5;    // declaration of d and f. 
int d = 3, f = 5;           // definition and initializing d and f. 
byte z = 22;                // definition and initializes z. 
char x = 'x';               // the variable x has the value 'x'.

For definition without an initializer: variables with static storage duration are implicitly initialized with NULL (all bytes have the value 0); the initial value of all other variables are undefined.

Variable Declaration in C

A variable declaration provides assurance to the compiler that there exists a variable with the given type and name so that the compiler can proceed for further compilation without requiring the complete detail about the variable. A variable definition has its meaning at the time of compilation only, the compiler needs actual variable definition at the time of linking the program.

In addition, the variable declaration is useful when you are using multiple files and you define your variable in one of the files which will be available at the time of linking of the program. You will use the keyword extern to declare a variable at any place. Though you can declare a variable multiple times in your C program, it can be defined only once in a file, a function, or a block of code.

Have You enjoyed the article on variables in c! 

Lvalues and Rvalues in C

There are two kinds of expressions in C −

  • lvalue − Expressions that refer to a memory location are called “lvalue” expressions. An lvalue may appear as either the left-hand or right-hand side of an assignment.
  • rvalue − The term rvalue refers to a data value that is stored at some address in memory. An rvalue is an expression that cannot have a value assigned to it which means an rvalue may appear on the right-hand side but not on the left-hand side of an assignment.

Variables are lvalues and so they may appear on the left-hand side of an assignment. Numeric literals are rvalues and so they may not be assigned and cannot appear on the left-hand side.


<< Prev                                                                                                              Next >>


Your friends are waiting for this content. Please Share To Aware Them!