Data Types in C

C - Data Types

Data Types in C : Each variable in C has an associated data type. Each data type requires different amounts of memory and has some specific operations which can be performed over it. Let us briefly describe them one by one:

Following are the examples of some very common data types used in C:

  1. char: The most basic data type in C. It stores a single character and requires a single byte of memory in almost all compilers.
  2. int: As the name suggests, an int variable is used to store an integer.
  3. float: It is used to store decimal numbers (numbers with floating point value) with single precision.
  4. double: It is used to store decimal numbers (numbers with floating point value) with double precision.

Different data types also have different ranges upto which they can store numbers. These ranges may vary from compiler to compiler. Below is list of ranges along with the memory requirement and format specifiers on 32 bit gcc compiler.

DATA TYPEMEMORY (BYTES)RANGEFORMAT SPECIFIER
short int2-32,768 to 32,767%hd
unsigned short int20 to 65,535%hu
unsigned int40 to 4,294,967,295%u
int4-2,147,483,648 to 2,147,483,647%d
long int8-2,147,483,648 to 2,147,483,647%ld
unsigned long int80 to 4,294,967,295%lu
long long int8-(2^63) to (2^63)-1%lld
unsigned long long int80 to 18,446,744,073,709,551,615%llu
signed char1-128 to 127%c
unsigned char10 to 255%c
float4 %f
double8 %lf
long double16 %Lf

Let’s see the following C program for the usage of the various data types:

#include <stdio.h> 
int main() 
{ 	
    int a = 1; 
    char b ='G'; 
    double c = 3.14; 
    printf("Hello World!\n"); 
  
    //printing the variables defined above along with their sizes 
    printf("Hello! I am a character. My value is %c and "
           "my size is %lu byte.\n", b,sizeof(char)); 
    //can use sizeof(b) above as well 
  
    printf("Hello! I am an integer. My value is %d and "
           "my size is %lu  bytes.\n", a,sizeof(int)); 
    //can use sizeof(a) above as well 
  
    printf("Hello! I am a double floating point variable."
           " My value is %lf and my size is %lu bytes.\n",c,sizeof(double)); 
    //can use sizeof(c) above as well 
  
    printf("Bye! See you soon. :)\n"); 
  
    return 0; 

Recommended Posts

Spread the love

Leave a Comment

Your email address will not be published. Required fields are marked *