Студенту >> Язык программирования Си


Правила записи констант различных типов

Константы - это объекты данных, которые не меняют своих значений в процессе выполнения программы. Имя константы однозначно определяет и ее тип, и ее значение.

В простейшем случае в Си определены три типа констант: целые, вещественные, символьные. Рассмотрим правила их записи.

    БНФ:
         целая_константа =
                 ( десятичная | восьмеричная |
                                шестнадцатеричная ) ["l"|"L"]

    десятичная        =     цифра {цифра}
    восьмеричная      = "0" цифра8 {цифра8}
    шестнадцатеричная = "0" ( "x" | "X" ) цифра16 {цифра16}
    цифра8            = "0"|"1"|...|"7"
    цифра16           = "0"|"1"|...|"9"|"A"|"B"|"C"|"D"|"E"|"F"

Обычно целые константы имеют тип int, добавление сзади константы буквы l или L обозначает константу типа long. Пример правильных целых констант: 17, 012L, 0x35, 1235L

Отрицательные целые константы получаются путем добавления знака "-" перед константой без знака. Значением целой константы является число, которое она обозначает.

    БНФ:
         вещ_константа = цифра {цифра} "." {цифра}
                         [ "e" [ "+" | "-" ] цифра {цифра} ]

Пример правильных вещественных констант: 12e-33, 12.5, 128.05e-56, 54e23

Отрицательные вещественные константы получаются путем добавления знака "-" перед константой без знака. Значением вещественной константы является число, которое она обозначает.

Символьной константой является любой символ, заключенный в апострофы: 'A', 'c', 'd'. Значение символьной константы - величина целого типа, равная коду символа из таблицы кодов.

Для обозначения некоторых невидимых управляющих символов используется специальная кодировка:

'\n' - символ перевода строки,
'\r' - символ возврата каретки,
'\t' - символ табуляции,
'\b' - символ возврата на шаг,
'\\' - обратная косая черта,
'\"' - кавычки,
'\0' - символ с кодом 0.

Несмотря на то, что специальные символы записываются с помощью двух символов, фактически определяется однобайтовая символьная константа.

Символ может быть представлен и его шестнадцатеричным кодом, перед которым необходимо поставить \x. Например: '\x4C' эквивалентно 'L' и т.д.

НАВЕРХ