Типы данных Objective-C

В языке программирования Objective-C типы данных относятся к обширной системе, используемой для объявления переменных или функций разных типов. Тип переменной определяет, сколько места она занимает в хранилище и как интерпретируется сохраненный битовый шаблон.

Типы в Objective-C можно классифицировать следующим образом:

Sr. No. Типы и описание
1

Basic Types −

Это арифметические типы и состоят из двух типов: (а) целочисленные типы и (б) типы с плавающей запятой.

2

Enumerated types −

Это снова арифметические типы, и они используются для определения переменных, которым могут быть присвоены только определенные дискретные целочисленные значения во всей программе.

3

The type void −

Спецификатор типа void указывает, что значение недоступно.

4

Derived types −

Они включают (а) типы указателей, (б) типы массивов, (в) типы структур, (г) типы объединения и (д) типы функций.

Типы массивов и структурные типы вместе называются агрегатными типами. Тип функции определяет тип возвращаемого значения функции. Мы увидим основные типы в следующем разделе, тогда как другие типы будут рассмотрены в следующих главах.

Целочисленные типы

В следующей таблице приведены подробные сведения о стандартных целочисленных типах с их размерами хранения и диапазонами значений.

Тип Размер хранилища Диапазон значений
символ 1 байт От -128 до 127 или от 0 до 255
беззнаковый символ 1 байт От 0 до 255
подписанный символ 1 байт От -128 до 127
int 2 или 4 байта -32 768 до 32 767 или от -2 147 483 648 до 2 147 483 647
беззнаковое целое 2 или 4 байта От 0 до 65 535 или от 0 до 4 294 967 295
короткая 2 байта От -32 768 до 32 767
беззнаковый короткий 2 байта От 0 до 65 535
долго 4 байта От -2 147 483 648 до 2 147 483 647
беззнаковый длинный 4 байта От 0 до 4 294 967 295

Чтобы получить точный размер типа или переменной на конкретной платформе, вы можете использовать sizeofоператор. Выражение sizeof (type) дает размер хранилища объекта или типа в байтах. Ниже приведен пример получения размера типа int на любой машине.

#import <Foundation/Foundation.h>

int main() {
   NSLog(@"Storage size for int : %d \n", sizeof(int));
   return 0;
}

Когда вы компилируете и выполняете вышеуказанную программу, она дает следующий результат в Linux:

2013-09-07 22:21:39.155 demo[1340] Storage size for int : 4

Типы с плавающей точкой

В следующей таблице приведены сведения о стандартных типах с плавающей запятой с размерами хранилища и диапазонами значений и их точностью.

Тип Размер хранилища Диапазон значений Точность
плавать 4 байта 1.2E-38 до 3.4E + 38 6 знаков после запятой
двойной 8 байт 2.3E-308 до 1.7E + 308 15 знаков после запятой
длинный двойной 10 байт 3.4E-4932 до 1.1E + 4932 19 знаков после запятой

Заголовочный файл float.h определяет макросы, которые позволяют вам использовать эти значения и другие сведения о двоичном представлении действительных чисел в ваших программах. В следующем примере будет напечатано пространство для хранения, занятое типом float, и его значениями диапазона.

#import <Foundation/Foundation.h>

int main() {
   NSLog(@"Storage size for float : %d \n", sizeof(float));
   return 0;
}

Когда вы компилируете и выполняете вышеуказанную программу, она дает следующий результат в Linux:

2013-09-07 22:22:21.729 demo[3927] Storage size for float : 4

Тип пустоты

Тип void указывает, что значение недоступно. Он используется в трех ситуациях:

Sr. No. Типы и описание
1 Function returns as void

В Objective-C есть различные функции, которые не возвращают значение, или вы можете сказать, что они возвращают void. Функция без возвращаемого значения имеет тип возврата как void. Например,void exit (int status);

2 Function arguments as void

В Objective-C есть различные функции, которые не принимают никаких параметров. Функция без параметров может быть пуста. Например,int rand(void);

Тип void может быть вам непонятен на данном этапе, поэтому давайте продолжим, и мы рассмотрим эти концепции в следующих главах.