Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PYaVU_s.doc
Скачиваний:
44
Добавлен:
24.02.2016
Размер:
665.09 Кб
Скачать
      1. Операции

Операции – это специальные комбинации символов, специфицирующие действия по преобразованию различных величин. Компилятор интерпретирует каждую из этих комбинаций как самостоятельную единицу, называемую лексемой (token).

В Таблица 2-3 представлен список операций. Операции должны использоваться точно так, как они представлены в таблице: без пробельных символов между символами в тех операциях, которые представлены несколькими символами.

Операция sizeof не включена в эту таблицу. Она скорее представляет собой ключевое слово, чем символ.

Операция

Наименование

!

Логическое НЕ

~

Побитовое дополнение

+

Сложение

-

Вычитание, арифметическое отрицание

*

Умножение

/

Деление

%

Остаток

<<

Сдвиг влево

>>

Сдвиг вправо

<

Меньше

<=

Меньше или равно

>

Больше

>=

Больше или равно

==

Равно

!=

Не равно

&

Побитовое И, адрес от

|

Побитовое включающее ИЛИ

^

Побитовое исключающее ИЛИ

&&

Логическое И

||

Логическое ИЛИ

,

Последовательное выполнение (запятая)

?:

Операция условного выражения

++

Инкремент

--

Декремент

=

Простое присваивание

+=

Сложение с присваиванием

-=

Вычитание с присваиванием

*=

Умножение с присваиванием

/=

Деление с присваиванием

%=

Остаток с присваиванием

>>=

Сдвиг вправо с присваиваиванием

<<=

Сдвиг влево с присваиванием

&=

Побитовое И с присваиванием

|=

Побитовое включающее ИЛИ с присваиванием

^=

Побитовое исключающее ИЛИ с присваиванием

Таблица 2‑3 Операции

Замечание: Операция условного выражения ?: -это тернарная, а не двух-символьная операция. Формат условного выражения следующий: <expression>?<expression>:<expression>

    1. Константы

Константа- это число, символ или строка символов. Константы используются в программе как неизменяемые величины. В языке Си различают четыре типа констант: целые константы, константы с плавающей точкой, константы-символы и строчные литералы.

      1. Целые константы

Целая константа- это десятичное, восьмеричное или шестнадцатеричное число, которое представляет целую величину. Десятичная константа имеет следующий формат представления:

<digits>,

где <digits> - это одна или более десятичных цифр от 0 до9.

Восьмеричная константа имеет следующий формат представления:

0<odigits>,

где <odigits> - это одна или более восьмеричных цифр от 0 до 7. Запись ведущего нуля необходима.

Шестнадцатеричная константа имеет один из следующих форматов представления:

0x<hdigits>

0X<hdigits>,

где <hdigits> одна или более шестнадцатеричных цифр.

Шестнадцатеричная цифра может быть цифрой от 0 до 9 или буквой (большой или малой) от A до F. В представлении константы допускается "смесь" больших и малых букв. Запись ведущего нуля и следующего за ним символа x или X необходима.

Пробельные символы не допускаются между цифрами целой константы. В Таблица 2-4 иллюстрируются примеры целых констант.

Десятичные константы

Восьмеричные константы

Шестнадцатеричные константы

10

012

0xa или 0xA

132

0204

0x84

32179

076663

0x7dB3 или 0x7DB3

Таблица 2‑4 Примеры констант

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

Каждая целая константа специфицируется типом, определяющим ее представление в памяти и область значений. Десятичные константы могут быть типа int или long.

Восьмеричные и шестнадцатеричные константы в зависимости от размера могут быть типа int, unsigned int, long или unsigned long. Если константа может быть представлена как int, она специфицируется типом int. Если ее величина больше, чем максимальная положительная величина, которая может быть представлена типом int, но меньше величины, которая представляется в том же самом числе бит как и int, она задается типом unsigned int. Наконец, константа, величина которой больше чем максимальная величина, представляемая типом unsigned int, задется типом long или unsigned long, если это необходимо. В Таблица 2-5 показаны диапазоны величин восьмеричных и шестнадцатеричных констант, представимых соответствующими типами на машине, где тип int имеет длину 16 бит.

Шестнадцатеричные диапазоны

Восьмеричные диапазоны

Тип

0x0 – 0x7FFFF

0 - 077777

Int

0x8000 – 0xFFFF

0100000 - 017777777777

Long

0x80000000 - 0xFFFFFFFF

020000000000 - 030000000000

Unsigned

Таблица 2‑5 Диапазоны величин восьмеричных и шестнадцатеричных констант

Важность рассмотренных выше правил состоит в том, что восьмеричные и шестнадцатеричные константы не содержат "знаковых" расширений, когда они преобразуются к более длинным типам (преобразование типов смотри в разделе 5 "Выражения и присваивания").

Программист может определить для любой целой константы тип long, приписав букву "l" или "L" в конец константы. В Таблица 2-6 показаны примеры целых констант.

Десятичные константы

Восьмеричные константы

Шестнадцатеричные константы

10L

012L

0xAL

79L

0115L

0x4FL

Таблица 2‑6 Примеры целых констант типа long