Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
-Запись целых констант. Целые десятичные числа, начинающиеся не с нуля, например: 4, 356, -128.
Целые восьмеричные числа, запись которых начинается с нуля, например: 016, 077.
Целые шестнадцатеричные числа, запись которых начинается с символов 0x, например: 0x1A, 0х253, 0xFFFF.
Тип константы компилятор определяет по следующим правилам: если значение константы лежит в диапазоне типа int, то она получает тип int; в противном случае проверяется, лежит ли константа в диапазоне типа unsigned int, в случае положительного ответа она получает этот тип; если не подходит и он, то пробуется тип long и, наконец, unsigned long. Если значение числа не укладывается в диапазон типа unsigned long, то возникает ошибка компиляции.
-Запись вещественных констант. Если в записи числовой константы присутствует десятичная точка (2.5) или экспоненциальное расширение (1Е-8), то компилятор рассматривает ее как вещественное число и ставит ей в соответствие тип double. Примеры вещественных констант: 44. 3.14159 44Е0 1.5Е-4.
-Использование суффиксов. Программист может явно задать тип константы, используя для этого суффиксы. Существуют три вида суффиксов: F(f) - float; U(u) - unsigned; L(l) - long (для целых и вещественных констант). Кроме того, допускается совместное использование суффиксов U и L в вариантах UL или LU.
Примеры:
3.14159F - константа типа float, под которую выделяется 4 байта памяти;
3.14L - константа типа long double, занимает 10 байт;
50000U - константа типа unsigned int, занимает 2 байта памяти (вместо четырех без суффикса);
0LU - константа типа unsigned long, занимает 4 байта;
24242424UL - константа типа unsigned long, занимает 4 байта.
-Запись символьных и строковых констант. Символьные константы заключаются в апострофы. Например: 'А', 'а', '5', '+'. Строковые константы, представляющие собой символьные последовательности, заключаются в двойные кавычки. Например: "rezult", "введите исходные данные".
Особую разновидность символьных констант представляют так называемые управляющие символы. Их назначение - управление выводом на экран. Как известно, такие символы расположены в начальной части кодовой таблицы ASCII (коды от 0 до 31) и не имеют графического представления. В программе на Си они изображаются парой символов, первый из которых ' \ '. Вот некоторые из управляющих символов:
'\n'-переход на новую строку;
'\t'-горизонтальная табуляция;
‘\a'-подача звукового сигнала
Управляющие символьные последовательности являются частным случаем эскейп-последовательностей (ESC-sequence), с помощью которых можно задать символьную константу указанием ее кода. Код символа можно указать в восьмеричном или в шестнадцатеричном представлении. Формат восьмеричного представления: ' \ddd '. Здесь d - восьмеричная цифра (от 0 до 7).
Формат шестнадцатеричного представления: ' \xhh ' (или ' \Xhh '), где h - шестнадцатеричная цифра (от 0 до F). Например, константа, соответствующая заглавной латинской букве А, может быть представлена тремя способами: 'А', '\101’, '\х41’.
-Именованные константы (константные переменные). Как и в
Паскале, в программе на Си/Си++ могут использоваться именованные константы. Употребляемое для их определения служебное слово const принято называть квалификатором доступа. Квалификатор const указывает на то, что данная величина не может изменяться в течение всего времени работы программы. В частности, она не может располагаться в левой части оператора присваивания. Примеры описания константных переменных:
const float pi=3.14159;
const int iMIN=1, iМАХ=1000;
-Определение констант на стадии препроцессорной обработки программы. Еще одной возможностью ввести именованную константу является использование препроцессорной директивы # define в следующем формате:
# define <имя константы> <значение константы>
Например:
# define iMIN 1
# define iМАХ 1000
Тип констант явно не указывается и определяется по форме записи. В конце директивы не ставится точка с запятой.
На стадии препроцессорной обработки указанные имена заменяются на соответствующие значения. Например, если в программе присутствует оператор
Х=iМАХ - iМIN;
то в результате препроцессорной обработки он примет вид:
Х=1000 - 1;
При этом идентификаторы iМАХ и iМIN не требуют описания внутри программы.
-Константы перечисляемого типа. Данное средство языка позволяет определять последовательность целочисленных именованных констант. Описание перечисляемого типа начинается со служебного слова enum, а последующий список констант заключается в фигурные скобки. Например:
enum {А, В, С, D};
В результате имени А будет сопоставлена константа 0, имени B - константа 1, C - 2, D - 3. По умолчанию значение первой константы равно нулю.
Для любой константы можно явно указать значение. Например:
enum {А=10, В, С, D};
В результате будут установлены следующие соответствия: А=10, В=11, С=12, D=13.
Возможен и такой вариант определения перечисления:
enum {А=10, В=20, С=35, D=100};
Если перечисляемому типу дать имя, то его можно использовать в описании переменных. Например:
enum metal {Fe, Co, Na, Cu, Zn};
metal Met1, Met2;
Здесь идентификатор metal становится именем типа. После такого описания в программе возможны следующие операторы:
Met1=Na, Met2=Zn;
Дата публикования: 2014-11-02; Прочитано: 475 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!