Data Type in C by G Krishna Chauhan

A programming language is proposed to help programmer to process certain kinds of data and to provide useful output. The task of data processing is accomplished by executing series of commands called program. A program usually contains different types of data types (integer, float, character etc.) and need to store the values being used in the program. C language is rich of data types. A C programmer has to employ proper data type as per his requirement.

C has different data types for different types of data and can be broadly classified as :


  • Primary data types
  • Secondary data types


Primary data types (Pre-Defined Data Type):



Integer types:

Integers are whole numbers with a range of values, range of values are machine dependent. Generally an integer occupies 2 bytes memory space and its value range limited to -32768 to +32767 (that is, -215 to +215-1). A signed integer use one bit for storing sign and rest 15 bits for number. 

To control the range of numbers and storage space, C has three classes of integer storage 
namely short int, int and long int. All three data types have signed and unsigned forms. A short int requires half the amount of storage than normal integer. Unlike signed integer, unsigned integers are always positive and use all the bits for the magnitude of the number. Therefore the range of an unsigned integer will be from 0 to 65535. The long integers are used to declare a longer range of values and it occupies 4 bytes of storage space.

Syntax: int ; like
int value1;
short int value2;
long int value3;

Example: 5, 6, 100, 2500.

Floating Point Types:

The float data type is used to store fractional numbers (real numbers) with 6 digits of precision. Floating point numbers are denoted by the keyword float. When the accuracy of the floating point number is insufficient, we can use the double to define the number. The double is same as float but with longer precision and takes double space (8 bytes) than float. To extend the precision further we can use long double which occupies 10 bytes of memory space. 

Syntax: float ; like
float value1;
double valu2;
long double value3;

Example: 9.125, 3.1254.

Character Type:

Character type variable can hold a single character. As there are singed and unsigned int (either short or long), in the same way there are signed and unsigned chars; both occupy 1 byte each, but having different ranges. Unsigned characters have values between 0 and 255, signed characters have values from �128 to 127.

Syntax: char ; like
char ch = 'a';

Example:  a, b, g, S, j.

Sub Data Type can be understand by this table : 



Void Type:

The void type has no values therefore we cannot declare it as variable as we did in case of integer and float. 

The void data type is usually used with function to specify its type. Like in our first C program we declared "main()" as void type because it does not return any value. The concept of returning values will be discussed in detail in the C function hub.

Secondary Data Types( Derived Data Type):

Array in C programming An array in C language is a collection of similar data-type, means an array can hold value of a particular data type for which it has been declared. Arrays can be created from any of the C data-types int,...

pointer is a variable which contains the address in memory of another variable. We can have a pointer to any variable type. The unary or monadic operator & gives the ``address of a variable''. The indirection or dereference operator * gives the ``contents of an object pointed to by a pointer''.

Structure in C Programming We used variable in our C program to store value but one variable can store only single piece information (an integer can hold only one integer value) and to store similar type of values we had to declare...

Syntax: typedef ; like typedef int number;

Now we can use number in lieu of int to declare integer variable. For example: "int x1" or "number x1" both statements declaring an integer variable. We have just changed the default keyword "int" to declare integer variable to "number".





No comments:

Post a Comment