C Programming Datatypes

331 views

In C programming, datatypes are declarations for variables. This determines the type and size of data associated with variables. For example,

int Var;
Code language: C/AL (cal)

Here, Var is a variable of int (integer) type. The size of int is 4 bytes.

Basic types

Here’s a table containing commonly used types in C programming for quick access.

TypeSize (bytes)Format Specifier
intat least 2, usually 4%d, %i
char1%c
float4%f
double8%lf
short int2 usually%hd
unsigned intat least 2, usually 4%u
long intat least 4, usually 8%ld, %li
long long intat least 8%lld, %lli
unsigned long intat least 4%lu
unsigned long long intat least 8%llu
signed char1%c
unsigned char1%c
long doubleat least 10, usually 12 or 16%Lf

int

Integers are whole numbers that can have both zero, positive and negative values but no decimal values. For example, 0-510

We can use int for declaring an integer variable.

int id;
Code language: C/AL (cal)

Here, id is a variable of type integer.

You can declare multiple variables at once in C programming. For example,

int id, age;
Code language: C/AL (cal)

The size of int is usually 4 bytes (32 bits). And, it can take 232 distinct states from -2147483648 to 2147483647.

float and double

float and double are used to hold real numbers.

float salary; double price;
Code language: C/AL (cal)

In C, floating-point numbers can also be represented in exponential. For example,

float normalizationFactor = 22.442e2;
Code language: C/AL (cal)

What’s the difference between float and double?

The size of float (single precision float data type) is 4 bytes. And the size of double (double precision float data type) is 8 bytes.

char

Keyword char is used for declaring character type variables. For example,

char test = 'h';
Code language: C/AL (cal)

The size of the character variable is 1 byte.

void

void is an incomplete type. It means “nothing” or “no type”. You can think of void as absent.

For example, if a function is not returning anything, its return type should be void.

Note that, you cannot create variables of void type.

short and long

If you need to use a large number, you can use a type specifier long. Here’s how:

long a; long long b; long double c;
Code language: C/AL (cal)

Here variables a and b can store integer values. And, c can store a floating-point number.

If you are sure, only a small integer ([−32,767, +32,767] range) will be used, you can use short.

short d;

You can always check the size of a variable using the sizeof() operator.

#include <stdio.h> int main() { short a; long b; long long c; long double d; printf("size of short = %d bytes\n", sizeof(a)); printf("size of long = %d bytes\n", sizeof(b)); printf("size of long long = %d bytes\n", sizeof(c)); printf("size of long double= %d bytes\n", sizeof(d)); return 0; }
Code language: C/AL (cal)

signed and unsigned

In C, signed and unsigned are type modifiers. You can alter the data storage of a data type by using them. For example,

unsigned int x; int y;
Code language: C/AL (cal)

Here, the variable x can hold only zero and positive values because we have used the unsigned modifier.

Considering the size of int is 4 bytes, variable y can hold values from -231 to 231-1, whereas variable x can hold values from 0 to 232-1.

Other data types defined in C programming are:

  • bool Type
  • Enumerated type
  • Complex types

Derived Data Types

Data types that are derived from fundamental data types are derived types. For example:

  • arrays
  • pointers
  • function types
  • structures, etc.

You may also like

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More

Enable Notifications    OK No thanks