Алфавит языка Си .
Элементы языка Си.
• Под элементами языка понимают базовые конструкции, используемые для написания программ.
• В элементы Си входят:
– Алфавит;
– Константы;
– Идентификаторы;
– Ключевые слова;
– Комментарии.
Компилятор языка Си воспринимает файл, который содержит программу на языке Си как последовательность текстовых строк. Он последовательно считывает строки программы и разбивает каждую на группы символов, которые называются лексемами. Лексема– это единица текста программы, которая имеет самостоятельный смысл для компилятора Си и которая не содержит в себе других лексем (Примеры: знаки операций, константы, идентификаторы, ключевые слова, различные скобки).
а)буквы и цифры – множество символов языка Си включает прописные и строчные буквы латинского алфавита и арабские цифры. Причем компилятор рассматривает одну и ту же прописную и строчную букву латинского алфавита как различные символы.
б)пробельные символы – это пробел, табуляция, перевод строки, новая страница, новая строка.
в)разделители
: ; , . ? ’ { } ( ) [ ] < > ! | / - # % & + - *
г)специальные символы, предназначены для представления некоторых пробельных и неграфических символов в строках и символьных константах.
• – новая строка
• t – горизонтальная табуляция – выравнивание по горизонтали
• v – вертикальная табуляция
• f – новая страница
• – забой – предыдущая буква (цифра) стирается
• ’ – апостроф
• ” – двойная кавычка
• \ – обратная косая черта
• N – восьмеричная константа
• xN – шестнадцатеричная константа.
д)операции– это комбинации символов, специфицирующие действие по преобразованию значений.
• + - сложение
• - - вычитание
• * - умножение
• / - деление вещественных чисел, нахождение целой части вещественных чисел
• % - остаток от деления
• = - присваивание простое
• ! – логическое «НЕ»
• && - логическое «И»
• \ - логическое «ИЛИ»
• ++ - прибавляет 1 к значению переменной (в Паскале n:=n+1, в Си n++)
• -- - вычитает 1 из значения переменной
• << - сдвиг влево
• >> - сдвиг вправо (используются в массивах)
• < - меньше
• > - больше
• <= - меньше либо равно
• >= - больше либо равно
• == - логический знак равенства
• , - последовательное выполнение операции
• += - присваивание со сложением
• - = - присваивание с вычитанием
• *= - присваивание с умножением
• /= - присваивание с делением
• %= - присваивание с остатком от деления
Основными операциями языка Си считаются +, *, -, /, а также оператор присваивания =.
Основные операции выполняются в Си также как и в Паскаль, но имеют несколько дополнений. Так, знак "-" может использоваться как унарная операция, изменяющая знак переменной на противоположный. Особое использование отличает операцию деления. Она может применяться как к целым, так и к вещественным числам. Если результат операции деления должен быть присвоен целочисленной переменной, то дробная часть просто отбрасывается. Это действие называется усечением. Если деление применяется к операндам разного типа, то целочисленное значение преобразуется к виду с плавающей точкой.
Среди наиболее распространенных операций Си можно выделить:
1) sizeof - она возвращает размер операнда, выраженный в байтах. Операндом может быть конкретная данная или тип данных. При использовании последнего, оно записывается в скобках.
2) деление по модулю (%). Используется в целочисленной арифметике. Ее аналогом в Паскаль является функция mod.
3) инкремент (++). Выполняет простое действие: увеличивает значение операнд на 1. Эта операция может быть записана в префиксной форме, когда символ "++" предшествует переменной, и в постфиксной форме, когда "++" следует за переменной. Эти формы различаются последовательностью приращения значения операнда.
Пример:
a++;
++a;
b=a++;
b=++a;
Первые два оператора не имеют различий. В третьем примере сначала значение переменной a будет присвоено переменной b, а затем увеличено на 1. В четвертом примере сначала значение переменной a увеличится, а затем присвоится.
4) декремент (--). Существует в префиксной и постфиксной формах. Результат его действия - уменьшение значения оператора на 1.
Операции "++" и "--" имеют очень высокий приоритет исполнения. Выше только исполнение действий в скобках.
2. Константы.
• Это число, символ или строка символов. Константы в языке Си используются для задания постоянных величин.
• Различают 4 типа:
• а) целые;
• б) с плавающей точкой;
• в) символьные константы;
• г) символьные строки.
const <тип> <имя константы>=<выражение>;
Пример const int l= - 124;
3. Идентификаторы.
• Используются для обозначения имен переменных, функций и меток, применяемых программе им может быть произвольная последовательность латинских букв, прописных и строчных, цифр и символов подчеркивания.
4. Ключевые слова.
• Слова, которые используются для обозначения каких-либо операторов – case, char, const,double, else, float, for, if, int, long, void, while
5. Комментарии.
• Это часть программы, которая игнорируется компилятором и служит для удобства читаемости исходного текста программы.
• /*…*/ многострочные комментарии
• // однострочные комментарии – символы до конца строки