Типы переменных с переменным размером

Типы переменных с переменным размером могут использоваться как в 32-разрядном, так и в 64-разрядном режиме.

Типы данных с переменным размером перечислены ниже:

Введите Размер в 32-разрядном режиме Размер в 64-разрядном режиме
long 4 8
Типы указателей 4 8

В приведенной выше таблице тип указателя ссылается на такие типы, как char *, int *, struct foo *, unsigned long * и так далее.

Следующие семантические правила применяются к переменным, которые определены с помощью одного из указанных выше типов, то есть для "long" и "pointer". Правила применяются независимо от того, являются ли переменные элементами структуры или объединения, или они объявлены как отдельные переменные:

Автоматический класс
Режим переменной будет зависеть от режима тестируемого процесса (32 или 64).
Класс локальной нити
Режим переменной будет зависеть от режима тестируемого процесса (32 или 64).
Глобальный класс
Переменная всегда обрабатывается в 64-разрядном режиме, независимо от режима тестируемого процесса. Это позволяет безопасно использовать переменную как в 32-разрядных, так и в 64-разрядных процессах без потери данных.
Глобальный класс ядра
Переменные ядра, которые являются указателями или имеют тип long, всегда обрабатываются в 64-разрядном режиме, как единственном поддерживаемом ядре для AIX 6.1.
Класс входа
Если тип long или pointer определен в прототипе функции для любого из параметров функции, режимы соответствующих переменных класса входа (от __arg1 до __arg32) будут зависеть от режима тестируемого процесса (32 или 64).
Класс выхода
Если тип long или pointer определен в прототипе функции как тип значения возврата функции, режимы переменной класса выхода (__rv) будут зависеть от режима тестируемого процесса (32 или 64).
Встроенный класс
Эти переменные обычно имеют тип постоянного размера, кроме встроенных переменных от __r3 до __r10, которые определены с помощью типа long без знака и имею длину 32 бита для 32-разрядных процессов и 64 бита для 64-разрядных процессов.

Тесты @@BEGIN и @@END всегда выполняются в 64-разрядном режиме.

Типы данных в Vue

Язык Vue принимает три специальных типа данных в дополнение к обычным типам данных C-89.