Ключевые слова int, float, char и т.д. называют конечными атрибутами декларации объектов программы. При декларации так называемых производных объектов используют еще дополнительные – промежуточные атрибуты или, как их иногда называют, «модификаторы».
К символам модификации текущего типа относятся:
– символ *перед идентификатором, обозначающий декларацию указателя на объект исходного типа (левый промежуточный атрибут);
– символы [ ] после идентификатора объекта – декларация массива объектов;
– символы ( ) после идентификатора объекта – декларация функции (правые промежуточные атрибуты).
Допускается использование более одного модификатора типа с учетом следующих правил:
1) чем ближе модификатор к ID объекта, тем выше его приоритет;
2) при одинаковом расстоянии от идентификатора объекта модификаторы [ ] и ( ) обладают приоритетом перед атрибутом звездочка *;
3) дополнительные круглые скобки позволяют изменить приоритет объединяемых ими элементов описания;
4) квадратные и круглые скобки, имеющие одинаковый приоритет, рассматриваются слева направо.
Конечный атрибут декларации принимается во внимание в последнюю очередь, т.е. тогда, когда все промежуточные атрибуты уже проинтерпретированы.
Примеры декларации объектов с конечным атрибутом int:
int a; – переменная типа int;
int a[5]; – массив из пяти элементов типа int;
int *a; – указатель на объект типа int;
int **a; – указатель на указатель на объект типа int;
int *a[5]; – массив из пяти указателей на элементы типа int;
int (*a)[10]; – указатель на массив из десяти элементов типа int;
int *a[3][4]; – 3-элементный массив указателей на одномерные целочисленные массивы по четыре элемента каждый;
int a[5][2]; – двухмерный массив элементов типа int;
int a(void); – функция без параметров, возвращающая значение типа int;
int *a(void); – функция без параметров, возвращающая указатель на элемент типа int;
int (*a)(void); – указатель на функцию без параметров, возвращающую значение типа int;
int *a(void)[6]; – функция без параметров, возвращающая указатель на массив элементов типа int;
int *a [4](void); – массив указателей на функцию без параметров, возвращающую значение типа int.
Существуют и недопустимые последовательности промежуточных атрибутов, например, массив не может состоять из функций, а функция не может возвращать массив или другую функцию.
ГЛАВА 3. Константы в программах
Константами называют величины, которые не изменяют своего значения во время выполнения программы, т.е. это объекты, не подлежащие использованию в левой части операции присваивания, т.к. константа – это неадресуемая величина и, хотя она хранится в памяти компьютера, не существует способа определить ее адрес. В языке Си константами являются:
– самоопределенные арифметические константы целого и вещественного типов, символьные и строковые данные;
– идентификаторы массивов и функций;
– элементы перечислений.
Целочисленные константы
Общий формат записи: ±n (+ обычно не ставится).
Десятичные константы – это последовательность цифр 0…9, первая из которых не должна быть 0. Например, 22 и 273 – обычные целые константы, если нужно ввести длинную целую константу, то указывается признак L(l) – 273L (273l). Для такой константы будет отведено – 4 байта. Обычная целая константа, которая слишком длинна для типа int, рассматривается как long.
Существует система обозначений для восьмеричных и шестнадцатеричных констант.
Восьмеричные константы – это последовательность цифр от 0 до 7, первая из которых должна быть 0, например: 0208 = 1610.
Шестнадцатеричные константы – последовательность цифр от 0 до 9 и букв от A до F (a…f), начинающаяся символами 0Х (0х), например: 0X1F16 (0х1f)16 = 3110.
Восьмеричные и шестнадцатеричные константы могут также заканчиваться буквой L(l) – long, например, 020L или 0X20L.
Примеры целочисленных констант:
1992 777 1000L– десятичные;
0777 00033 01l – восьмеричные;
0x123 0X00ff 0xb8000l – шестнадцатеричные.
Статьи к прочтению:
Как самостоятельно заполнить 3-НДФЛ в 2017 в Программе Декларация
Похожие статьи:
-
При выполнении вариантов заданий придерживайтесь следующих ключевых моментов. 1. Выражение, стоящее в круглых скобках операторов if, while и do-while,…
-
Использование автозамены при вводе текста
Создание текста документа Word Ввод текста в документ При вводе и редактировании текста с клавиатуры следует придерживаться определенных правил и…