- •1. Цель работы
- •2. Базовые понятия языка
- •2.1. Алфавит языка Си
- •2.2. Константы
- •2.3. Идентификатор
- •2.4. Объявление переменных
- •2.5. Стандартные типы данных
- •2.6. Данные вещественных типов
- •2.7. Инициализация переменных
- •3. Операции языка си
- •3.1. Арифметические операции
- •3.2. Поразрядные операции
- •3.3. Операции отношения (сравнения)
- •3.4. Логические операции
- •3.5. Операции присваивания
- •3.6. Операция sizeof
- •3.7. Операция условие
- •3.8. Разделитель точка с запятой
- •3.9. Приоритеты операций и порядок вычислений
- •4. Операторы языка си
- •4.1. Составной оператор
- •4.2. Условный оператор
- •4.3. Оператор switch
- •4.4. Оператор break
- •4.5. Оператор for
- •4.6. Оператор while
- •4.7. Оператор do while
- •4.8. Оператор continue
- •4.9. Оператор goto
- •5. Указатели, массивы, строки
- •5.1. Указатели
- •5.2. Массивы
- •5.3. Строки
- •5.6. Двумерные массивы
- •5.7. Инициализация массивов
- •5.8. Связь указателей и массивов
- •6. Функции
- •6.1. Определение и вызов функций
- •6.2. Передача параметров функции main
- •7. Структуры и объединения
- •7.1. Структуры
- •7.2. Объединения (смеси)
- •7.3. Поля битов
- •8. Ввод-вывод
- •8.1. Консольный ввод-вывод
- •8.2. Потоковый файловый ввод-вывод
- •9. Вопросы для самостоятельного изучения
- •10. Порядок выполнения лабораторных работ и содержание отчета
- •11. Литература
2.2. Константы
В языке СИ разделяют четыре типа констант: целые константы, константы с плавающей запятой, символьные константы и строковые.
Целая константа: это десятичное, восьмеричное или шестнадцатеричное число, которое представляет целую величину.
Десятичная константа состоит из одной или нескольких десятичных цифр, причем первая цифра не должна быть нулем.
Восьмеричная константа начинается с нуля и состоит из восьмеричных цифр.
Шестнадцатеричная константа начинается с обязательной последовательности 0х или 0Х и содержит одну или несколько шестнадцатеричных цифр
Примеры целых констант:
Десятичная |
Восьмеричная |
Шестнадцатеричная |
16 |
037 |
0x12AF |
91 |
015 |
0x29 |
Если требуется сформировать отрицательную целую константу, то используют знак "-" перед записью константы (унарный минус). Например: -0x2A, -088, -16 .
Каждой целой константе присваивается тип, определяющий преобразования, которые должны быть выполнены, если константа используется в выражениях. Тип константы определяется следующим образом:
- десятичные константы рассматриваются как величины со знаком, и им присваивается тип int (целая) или long (длинная целая) в соответствии со значением константы. Если константа меньше 32768, то ей присваивается тип int в противном случае long.
- восьмеричным и шестнадцатеричным константам присваивается тип int, unsigned int (беззнаковая целая), long или unsigned long в зависимости от значения константы согласно табл 3.
Таблица 3 Правила назначения типов константам
Диапазон шестнадцатеричных констант |
Диапазон восьмеричных констант |
Тип |
0x0 – 0x7FFF |
0 - 077777 |
int |
0x8000 – 0xFFFF |
0100000 - 0177777 |
unsigned int |
0x10000 – 0x7FFFFFFF |
0200000 - 017777777777 |
long |
0x80000000 – 0xFFFFFFFF |
020000000000 - 037777777777 |
unsigned long |
Для того чтобы любую целую константу определить типом long, достаточно в конце константы поставить букву "l" или "L". Пример:
5l, 6l, 128L, 0105L, 0x2A11L.
Константа с плавающей точкой - десятичное число, представленное в виде действительной величины с десятичной точкой или экспонентой.
Число с плавающей точкой состоит из целой и дробные части и (или) экспоненты. Константы с плавающей точкой представляют положительные величины удвоенной точности (имеют тип double).
Символьная константа - представляется символом заключенном в апострофы. Управляющая последовательность рассматривается как одиночный символ, допустимо ее использовать в символьных константах. Значением символьной константы является числовой код символа. Примеры:
' ' – пробел ,
'Q' – буква Q ,
'\n' – символ новой строки,
'\\' – обратная дробная черта,
'\0' – символ с нулевым кодом
Строковая константа (литерал) – последовательность символов (включая строчные и прописные буквы русского и латинского а также цифры) заключенные в кавычки (") . Например: "Школа N 35", "город Ижевск", "YZPT КОД".
Все управляющие символы, кавычка ("), обратная дробная черта (\) и символ новой строки в строковом литерале и в символьной константе представляются соответствующими управляющими последовательностями. Каждая управляющая последовательность представляется как один символ. Например, при печати литерала "Школа \n N 35" его часть "Школа" будет напечатана на одной строке, а вторая часть "N 35" на следующей строке.
В памяти в конец каждого строковой константы компилятором добавляется нулевой символ (признак конца строки), представляемый управляющей последовательностью \0.
Строки имеют тип char[] . Это означает, что строка рассматривается как массив символов.
