Операционная система UNIX. Руководство программиста

     

Классы памяти


В поле, указывающем класс памяти, хранится одно из перечисленных ниже значений. Именованные константы определены во включаемом файле <storclass.h>.



Обозначение Значение Смысл класса памяти
C_EFCN -1 Физический конец функции
C_NULL 0 -
C_AUTO 1 Автоматическая переменная
C_EXT 2 Внешнее имя
C_STAT 3 Статический
C_REG 4 Регистровая переменная
C_EXTDEF 5 Внешнее определение
C_LABEL 6 Метка
C_ULABEL 7 Неопределенная метка
C_MOS 8 Элемент структуры
C_ARG 9 Аргумент функции
C_STRTAG 10 Начало структуры
C_MOU 11 Элемент объединения
C_UNTAG 12 Начало объединения
C_TPDEF 13 Определение типа
C_USTATIC 14 Неинициализированный статический
C_ENTAG 15 Начало перечисления
C_MOE 16 Элемент перечисления
C_REGPARM 17 Регистровый параметр
C_FIELD 18 Битное поле

Обозначение Значение Смысл класса памяти
C_BLOCK 100 Начало или конец блока
C_FCN 101 Начало или конец функции
C_EOS 102 Конец структуры
C_FILE 103 Имя файла
C_LINE 104 Только для внутреннего пользования
C_ALIAS 105 Синоним
C_HIDDEN 106 Аналог статического; используется, чтобы избежать конфликта имен

Все перечисленные классы памяти, за исключением C_ALIAS и C_HIDDEN, генерируются при выполнении команд cc и as. Класс памяти C_HIDDEN никакими средствами системы UNIX не используется.

Некоторые из перечисленных классов памяти предназначены только для внутреннего использования C-компилятором. Таковы C_EFCN, C_EXTDEF, C_ULABEL, C_USTATIC и C_LINE.



Содержание раздела