Замечания к использованию констант
Логические структуры языка.
Программа на С состоит из лексических элементов.
- Элементы
Программа на С представляет собой строки, состоящие из лексических элементов пяти типов:
зарезервированные (ключевые) слова, константы, операции, ограничители, идентификаторы.
Смежные элементы отделяются друг от друга разделителями или комментариями.
Разделители: пробелы, символы табуляции, возврата каретки, перевода строки.
- Комментарии
Они служат для документирования программы и ограничиваются символами /* и */.
Формат /* текст комментария */
В С++ формат комментария // текст комментария
Пример
/* Программа выводит сообщение на экран */или// Программа выводит сообщение на экран
- Ограничители
Символы – ограничители: ( ), [ ], { }, : , , , ;
- Операции
Перечень операций, используемых в С приведен ниже:
Одно символьные операции: = ! ^ & * - : . < > / ? + %
Двух символьные операции: = = != && :: -> ++ -- << >> <= >= += -= *= /= %= ^= := &=
Трехсимвольные операции: <<= >>=
- Идентификаторы
В С идентификаторы служат для именования типов, переменных, констант и функций. Идентификатор состоит из букв и цифр и может содержать символы подчеркивания. Значащие – первые 32 символа. Начинается идентификатор с буквы. В идентификаторах прописные и заглавные буквы различаются.
- Зарезервированные слова
В С используются зарезервированные слова, которые нельзя использовать в качестве идентификаторов. Они задаются прописными буквами. Фрагмент таблицы зарезервированных слов.
auto | double | goto | main | switch | while |
break | else | if | pointer | typedef | |
case | float | long | return | union |
Константы
В С имеется четыре типа констант: целые, вещественные, символьные и строковые.
Константы целого типа
Константы целого типа могут задаваться в десятичной, 8-ой или 16-ой системах счисления.
Десятичные целые константы образуются из цифр. Первой цифрой не должен быть 0.
Восьмеричные константы начинаются с цифры 0, за которой следуют цифры 0-7.
Шестнадцатеричные константы начинаются с цифры 0 и символа , за которыми может стоять одна или более 16-ых цифр 0-9,A-F.
Пример
#include <stdio.h>
Main()
{
int a=3478,
b=06626,
c=0xD96;
printf(“a=%d b=%d c=%d\n”,a,b,c);
}
На экране
a=3478 b=3478 c=3478
Константы вещественного типа
Константы этого типа состоят из цифр, десятичной точки и знака десятичного порядка
Примеры
Е1 .1234 .1е3
Е1 1.234 0.0035е-6
Е-1 2.1е-12 0.234
Символьные константы
Символьные константы заключаются в одиночные кавычки (апострофы)
Например
if (ch>=’a’&&ch<=’z’)
Одни символьные константы соответствуют символам, которые можно вывести на экран, другие – управляющим символам, задаваемым с помощью esc-последовательности, третьи – форматирующим символам, также задаваемым с помощью esc – последовательности.
Например
Символ “апостроф” à ‘\’’;
Переход на новую строку à ‘\n’;
Обратный слэш à ‘\\’.
Управляющие коды
В следующей таблице приведены управляющие коды, используемые в С. Каждая esc – последовательность должна быть заключена в кавычки
esc-последовательность | Назначение |
\n | Новая строка |
\t | Горизонтальная табуляция |
\v | Вертикальная табуляция |
\b | Возврат на символ |
\r | Возврат в начало строки |
\f | Прогон бумаги до конца страницы |
\\ | Обратный слеш |
\’ | Одинарная кавычка |
\” | Двойная кавычка |
\a | Звуковой сигнал |
\ddd | Код символа в ASCII-от 1 до 3-х восьмеричных цифр |
\xhhh | Код символа в ASCII-от 1 до 3-х шестнадцатеричных цифр |
Строковые константы
Строковые константы состоят из нуля или более символов, заключенных в двойные кавычки. В строковых константах управляющие коды задаются с помощью esc-последовательности.
Замечания к использованию констант
Для задания констант можно использовать их непосредственное написание (обозначение). Кроме того, существуют следующие способы задания константы:
a) Макроопределение
Формат
#define <имя константы> <значение константы>
Например
#define PI 3.14
#define CHARACTER_B 'B'
#define version_oct 020 // для восьмеричного числа
#define version_dec 16 // для десятичного числа
#define version_hex 0x10 // для 16-го числа
#define NAME “ALEKS”
б) типизированные константы
Можно определить константу, описать тип данных и присвоить значение, использую ключевое слово const
Например
Main()
{
const int CHILDREN=8;
const char INIT=’C’;
const float NUMBER=1.65;
}