logo search
OAiP_shporka

7. Знаки пунктуации, специальные символы и знаки операций в языке Си.

Знаки пунктуации и специальные символы:

, запятая

. точка

; точка с запятой

: двоеточие

? знак вопроса

' одинарная цитатная скобка

'' двойная цитатная скобка

( левая круглая скобка

) правая круглая скобка

[ левая прямоугольная скобка

] правая прямоугольная скобка

{ левая фигурная скобка

} правая фигурная скобка

< левая угловая скобка

> правая угловая скобка

! восклицательный знак

| вертикальная черта

/ знак деления

\ знак обратного деления

~ тильда

+ плюс

# номер

% процент

& амперсанд

^ крышечка, домик

* звездочка

- минус

= равно

Язык С содержит большое количество встроенных операций. Существует четыре класса операций: арифметические, логические, поразрядные и операции сравнения. Кроме них, есть также некоторые специальные операторы, например, оператор присваивания.

Общая форма оператора присваивания: имя переменной=выражение;

В одном операторе присваивания можно присвоить одно и то же значение многим переменным. Для этого используется оператор множественного присваивания: х=y=z=0;

Составное присваивание – разновидность оператора присваивания, в которой запись сокращается и становится более удобной в написании. Например, оператор x=x+10; можно записать как x+=10;

Арифметические операции.

- вычитание, так же унарный минус

+ сложение

* умножение

/ деление

% остаток от деления

++ инкремент, или увеличение, прибавляет 1 к значению переменной.

--декремент, или уменьшение

Приоритет выполнения арифметические операторов:

Наивысший: ++, --, - (унарный минус), *, /, %

Наинизший: +, - .

Операции с одинаковым приоритетом выполняются слева направо. Используя круглые скобки, можно изменить порядок вычислений.

Операции сравнения:

> больше

>= больше или равно

< меньше

<= меньше или равно

== равно

!= не равно

Логические операции

&& И

|| ИЛИ

! НЕ, отрицание

Операции над указателями:

& - операция получения адреса: выдает адрес переменной, имя которой стоит за обозначением операции.

* - косвенная адресация: выдает значение записанное по адресу, на который ссылается указатель.

Дополнительные операции:

Операция условия?

Оператор ? часто можно использовать вместо оператора вида if-then-else.

Выражение1 ? Выражение2 : Выражение3;

Сначала вычисляется Выражение1, если оно истинно, то вычисляется Выражение2 и его значение присваивается всему выражение; если Выражение1 ложно, то вычисляется Выражение3 и всему выражению присваивается его значение.

x=10;

y=x>9 ? 100:200; переменной у будет присвоено значение 100.

sizeof выдает размер (в байтах) операнда, стоящего справа.

(type) операция приведения типа: превращает следующее за ней значение в тим, определенный ключевым словом, заключенным в скобки.

Операция «запятая» - связывает два выражения в одно и гарантирует, что левое выражение будет вычислено первым. Типичным примером использования является включение дополнительной информации в управляющее выражение цикла for.

Операции над структурами и объединениями.

. операция принадлежности используется совместно с именем структуры (или объединения) для задания элемента этой структуры (или объединения). Если name является именем структуры, а member – элементов, указанным в структурном шаблоне, то name.member определяет этот элемент структуры.

-> косвенная адресация. Используется совместно с указателем на структуру (или объединения) для идентификации того или иного элемента этих структур (или объединений). Предположим, что ptrstr является указателем на структуру, а member – элементом, указанным в структурном шаблоне. Тогда ptrstr->member определяет, что это элемент структуры, на которую ссылается указатель.