Objective C Data Types - Objective C

What are Objective-C Data Types?

The data types refer to an extensive system used for declaring variables or functions of different types.
The type of a variable determines how much space it occupies in storage and how the bit pattern stored is interpreted.
The types in Objective-C can be classified as follows:

S.N.
Types and Description
1
Basic Types:
They are arithmetic types and consist of the two types: (a) integer types and (b) floating-point types.
2
Enumerated types:
They are arithmetic types and they used to define variables that can only be assigned certain discrete integer values throughout the program.
3
The type void:
The type specifiervoidindicates that no value is available.
4
Derived types:
They include (a) Pointer types, (b) Array types, (c) Structure types, (d) Union types and (e) Function types.

The array types and structure types are referred to collectively as the aggregate types.
The type of a function specifies the type of the function's return value.

Integer Types

The standard integer types with its storage sizes and value ranges are mentioned in the following table:

Type
Storage size
Value range
char
1 byte
-128 to 127 or 0 to 255
unsigned char
1 byte
0 to 255
signed char
1 byte
-128 to 127
int
2 or 4 bytes
-32,768 to 32,767 or -2,147,483,648 to 2,147,483,647
unsigned int
2 or 4 bytes
0 to 65,535 or 0 to 4,294,967,295
short
2 bytes
-32,768 to 32,767
unsigned short
2 bytes
0 to 65,535
long
4 bytes
-2,147,483,648 to 2,147,483,647
unsigned long
4 bytes
0 to 4,294,967,29

  • To get the exact size of a type or a variable, sizeof operator is used.
  • The expression sizeof(type) yields the storage size of the object or type in bytes.

Following is an example to get the size of int type on any machine:

When you compile and execute the above program, it produces the following result on Linux:

Floating-Point Types

The standard float-point types with storage sizes and value ranges and their precision are given below:

Type
Storage size
Value range
Precision
float
4 byte
1.2E-38 to 3.4E+38
6 decimal places
double
8 byte
2.3E-308 to 1.7E+308
15 decimal places
long double
10 byte
3.4E-4932 to 1.1E+4932
19 decimal places

The header file float.h defines macros that allow you to use these values and other details about the binary representation of real numbers in your programs.
The below example prints storage space taken by a float type and its range values:

The following result is produced,when you compile and execute the above program:

The void Type

The void type specifies that no value is available. It is used in three kinds of situations:

S.N.
Types and Description
1
Function returns as void
There are various functions in Objective-C which do not return value or you can say they return void. A function with no return value has the return type as void. For example,void exit (int status);
2
Function arguments as void
There are various functions in Objective-C which do not accept any parameter. A function with no parameter can accept as a void. For example,int rand(void);

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

Objective C Topics