Ключевые слова и синтаксис языка
Основные элементы программирования
Большинство программ предназначено для решения прикладных задач. В программах это выполняется путем обработки информации. Для решения задачи программа должна выполнить следующие действия:
- ввести информацию в программу;
- запомнить введенную информацию;
- задать команды для обработки информации;
- передать информацию из программы пользователю,
Команды в программе должны быть организованы таким образом, чтобы:
- некоторые из них выполнялись только при истинном значении заданного условия (или набора условий);
- другие команды выполнялись многократно;
- отдельные команды разделены на части, и выполняемые из разных участков программы.
Итак, из выше описанных действий можно выделить семь основных элементов программирования: ввод, типы данных, операции, вывод, условное выполнение, циклы и подпрограммы ( функции для языка Си).
В большинстве языков программирования имеются все указанные элементы. Во многих языках, включая Си, имеются и другие средства. Однако, наиболее быстрый способ изучения нового языка основан на понимании того, как в данном языке реализованы перечисленные основные элементы программирования.
Синтаксис языка C
Есть шесть классов лексем: идентификаторы, ключевые слова, константы, строки, операторы и разделители.
Идентификаторы: последовательность букв и цифр произвольной длины. Первый символ-буква, например, NAME1, name 1, Name 1, name_1…
Ключевые слова: Они зарезервированы для языка и не могут использоваться другим образом. Список ключевых слов языка представлен в табл.1.1
Таблица 1.1
Ключевые слова языка
| Типы данных | Операторы | |||||
| Eng | Рус | Eng | Рус | |||
| Сhar | Символ | Asm | ||||
| Class | Класс | Break | Прерывание | |||
| Double | Двойной | Case | Выбор | |||
| Enum | Перечень | Continue | Продолжение | |||
| Float | Плавающий | Default | По молчанию | |||
| Продолжение табл. 1.1 | ||||||
| Int | Целый | Delete | Удалять | |||
| Long | Длинное целое | Do | Делать | |||
| Short | Короткое целое | Else | Иначе | |||
| Struct | Структура | For | Для | |||
| Union | Объединение | Go to | Идти (переход) | |||
| Unsigned | Беззнаковый | If | Если | |||
| Void | Пустой | New | Новый | |||
| Return | Возврат | Switch | Прерывать | |||
| Extern | Внешняя | Inline | В линию | |||
| Register | Регистр | Const | Постоянный | |||
| Overload | Переопределение | Typedef | Тип переменной | |||
| Auto | Автоматически | While | Пока | |||
| Static | Статический | Public | Открытый | |||
Константы: целые, символьные, с плавающей точкой, строки.
Целая – последовательность цифр. Константа - восьмеричная, если начинается с 0, в противном случае – десятичная. Цифры 8 и 9 не являются восьмеричными цифрами. Последовательность цифр 0X или 0x воспринимается как шестнадцатеричное целое число. В шестнадцатеричные цифры входят буквы от A до F(f), имеющие значения 10 – 15.
Примеры: 0x53=83; 0xF=15;
0xA = 10.
Константа, значение которой превышает наибольшее машинное целое со знаком, считается длинной (long), в остальных случаях константы считаются целыми (int).
Длинные константы: десятичная, восьмеричная или шестнадцатеричная константа, за которой непосредственно стоит буква L (l), считается длинной константой.
Примеры: 12l - десятичная,
0123L - восьмеричная,
0xaaaal - шестнадцатеричная.
Перевод чисел из одной системы счисления в другую приведен в табл. 1.2.
Для представления шестнадцатеричного числа в двоичном коде надо заменить двоичной записью каждую цифру этого числа. Например, числа 0xAB01 и 0x53, представленные в двоичном виде, переводятся в десятичные по известной формуле перевода [1].
Таблица 1.2
Таблица перевода чисел
| Десятичное число | Шестнадцате-ричное число | Двоичная запись числа | Восьмерич-ная запись числа | Шестнадцате-рич-ная запись числа |
| 0x0 | ||||
| 0x1 | ||||
| 0x2 | ||||
| 0x3 | ||||
| 0x4 | ||||
| 0x5 | ||||
| 0x6 | ||||
| 0x7 | ||||
| 0x8 | ||||
| 0x9 | ||||
| A | 0xA | |||
| B | 0xB | |||
| C | 0xC | |||
| D | 0xD | |||
| E | 0xE | |||
| F | 0xF |
A B 0 1
1010 1011 0000 0001 –> 1010101100000001=
1 * 215 + 0 * 214 + 1 * 213 + 0 * 212 + 1 * 211 + 0 * 210 + 1 * 29+ 1 * 28 + … 1 * 20 = 43777;
0x53 = 01010011 = 0 * 27 + 1 * 26 + 0 * 25 + 1 * 24 + 0 * 23 + 0 * 22 + 1* 21 + 1 * 20 = 83;
Символьная константа состоит из символа, заключенного в апострофы (например, ‘x’). Значением символьной константы считается численное значение константы в машинном наборе (алфавите). Символьные константы считаются данными типа char. Использование неграфических символов, однозначная кавычка ‘ и обратная косая \ производится в соответствии с табл.1.3
Таблица 1.3
Использование специальных символов
| Название | Обозначение |
| Символ новой строки | \n |
| Горизонтальная табуляция | \t |
| Вертикальная табуляция | \v |
| Возврат на шаг | \b |
| Возврат каретки | \v |
| Продолжение табл. 1.3 | |
| Название | Обозначение |
| Перевод формата | \f |
| Обратная кавычка | \\ |
| Апостроф | \’ |
| Набор битов 0ddd | \ddd |
| Набор битов 0xddd | \xddd |
| Пустой символ | \0 |
Последовательность \ddd состоит из обратной косой, за которой следуют 1, 2, 3 - восьмеричные цифры, задающие значение требуемого символа. \xddd та же последовательность, где 1, 2, 3 – шестнадцатеричные цифры.
Константы с плавающей точкой (с Е) используются для представления больших чисел в компактной форме.
Примеры: 345. = 345
3.14159
2.1Е5 = 210000
.123Е3 = 123
4037е-5 = .04037
Строки. Строка – это последовательность символов, заключенная в двойные кавычки “…”. Строка имеет тип char, а класс памяти static. Она инициализируется заданными символами. Все строки, даже если они занесены одинаково, различны. Компилятор располагает в конце каждой строки нулевой (пустой) байт \O с тем, чтобы сканирующая строку программа могла найти ее конец. В строке перед символом двойной кавычки должна стоять обязательно \. Кроме того, могут использоваться те же обозначения, что были описаны для символьных констант.
Примеры:
“Это строковая константа”
“A”
“Это одна \*\
строка”
Имена и типы. Имя обозначает объект, функцию, тип, значение или метку. Имя может использоваться только внутри части текста программы, называемой его областью видимости. Имя имеет тип, определяющий его использование.
Объект – это область памяти. Объект имеет класс памяти, определяющий время его жизни.
Область видимости. Существует четыре ее вида: локальная, файл, программа и класс.
Локальная область- имя, описанное в блоке, локально в этом блоке и может использоваться только в нем. Исключения составляют метки, которые могут использоваться в любом месте функции, в которой они описаны.
Файл – имя, описанное вне любого блока. Программа – имя, описанное в файле, может использоваться в любом другом файле.
Класс - имя члена класса, локально для его класса и может использоваться только в функции-члене этого класса.
Дата добавления: 2017-06-02; просмотров: 860;
