Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Константы



-Запись целых констант. Целые десятичные числа, начинающиеся не с нуля, например: 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 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...