Главная Обратная связь

Дисциплины:






Приоритеты операций



Вес Знак Наименование операции Тип операции Порядок
( ) [] .   -> вызов функции выделение элемента массива выделение элемента структуры или объединения выделение элемента структуры или объединения, адресуемой (го) указателем Выражение Слева направо
! ~ - ++ -- & * (тип) sizeof логическое отрицание побитовое отрицание изменение знака (унарный минус) увеличение на единицу (инкремент) уменьшение на единицу (декремент) определение адреса обращение по адресу преобразование типа определение размера в байтах унарные Справа налево
* / % умножение деление определение остатка от деления по модулю бинарные арифмети-ческие Слева направо
+ - сложение вычитание бинарные арифмет. Слева направо
<< >> сдвиг влево сдвиг вправо сдвига Слева направо
< <= > >= меньше чем меньше или равно больше чем больше или равно отношения Слева направо
== != равно неравно отношения Слева направо
& побитовая операция "И" поразрядная Слева направо

 

Продолжение табл. 1

Вес Знак Наименование операции Тип операции Порядок
^ побитовая «исключающее "ИЛИ"» поразрядная Слева направо
| побитовая "ИЛИ" поразрядная Слева направо
&& логическая операция "И" логическая Слева направо
|| логическая операция "ИЛИ" логическая Слева направо
? : условная операция тернарная Справа налево
= += -= *= /= %=   <<=   >>=   &=   |=   ^= простое присваивание сложение с присваиванием вычитание с присваиванием умножение с присваиванием деление с присваиванием выделение остатка от деления с при- сваиванием сдвиг двоичного числа влево с присваиванием сдвиг двоичного числа вправо с присваиванием побитовая операция "И" с присваиванием поразрядная операция "ИЛИ" c присваиванием исключающее "или" с присваиванием присваи-вания   бинарные   (для двоичных операндов) Справа налево
, операция "запятая" (соединения) Бинарная Слева направо

 

 

Операторы языка Си

1. Оператор "Выражение"имеет три формы



<идентификатор>=<выражение>; //выполяет простое присваивание;

<идентификатор><знак>=<выражение>; // составное присваивание,

<идентификатор>=<идентификатор>=<выражение>;

реализует многоступенчатое присваивание справа налево.

Примеры: z=x; w+=2; /* w=w+2*/ s=t=1;

 

2. Условный операторзаписывается следующим способом

if (<выражение>) <оператор1;>

else (<оператор2>);

Пример: a) if (k != 0) k = k+1; b) if (k) k++;

else k = k-1; else k--;

 

3. Оператор цикла со счетчиком:

for (<выражение1>;<условие выполнения>;<выражение2>) <оператор>;

где <выражение1> - выражение инициализации параметра цикла,

<выражение2> - изменение параметра цикла,

Пример: for (i=0; i<100; i++) sum += x[i]; // sum=sum+x[i];

 

4.Оператор цикла с предусловием:

while ( <выражение> ) <оператор>;

Пример: while (i<100) p++;

 





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...