Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab3.doc
Скачиваний:
7
Добавлен:
21.09.2019
Размер:
120.83 Кб
Скачать

Операції присвоювання

До операцій присвоювання відносять = , += , -= , *= , /= , %= , <<= , >>= , &= , ^= , |= , а також префіксні і постфіксні операції ++ і --. Всі операції присвоювання присвоюють змінній результат обчислення виразу. Якщо тип лівої частини присвоювання відрізняється від типу правої частини, то тип правої частини приводиться до типу лівої.

У одному операторі операція присвоювання може зустрічатися декілька разів. Обчислення відбуваються справа ліворуч.

Наприклад:

a = ( b = c ) * d;

Спочатку змінний b присвоюється значення с, потім виконується операція множення на d, і результат присвоюється змінний а.

Операції +=, -=, *= і /= є вкороченою формою запису операції присвоювання. Їхнє застосування проілюструємо за допомогою такого опису:

a += b означає a = a + b

a -= b означає a = a-b.

a *= b означає a = a*b.

a /= b означає a = a/b.

Префіксні і постфіксні операції ++ і -- використовують для збільшення (інкремент) і зменшення (декремент) на одиницю значення змінної.

Семантика зазначених операцій така:

++a збільшує значення змінної а на одиницю до використання цієї змінної у виразі.

а++ збільшує значення змінної а на одиницю після використання цієї змінної у виразі.

--a зменшує значення змінної а на одиницю до використання цієї змінної у виразі.

a-- зменшує значення змінної a на одиницю після використання цієї змінної у виразі.

Інші операції

Операцію sizeof (розмір) можна застосувати до константи, типу або змінної. В результаті буде отримане число байтів, які зайняті операндом.

Наприклад:

printf ( “\nРозмір пам’яті під ціле %d”, sizeof( int) ); printf ( “\n Розмір пам’яті під cимвол %d”, sizeof( сhar) );

Керуючі структури С/C++

Керуючі структури або оператори керування служать для керування послідовністю обчислень у програмі. Оператори розгалуження і цикли дозволяють переходити до виконання іншої частини програми або виконувати якусь частину програми багаторазово, поки задовольняється одна або більше умов.

Блоки і складові оператори

Будь-яка послідовність операторів, що взяті в фігурні дужки, є складовим оператором (блоком). Складовий оператор не повинен закінчуватися (;), оскільки обмежувачем блоку служить сама дужка, яка закривається. Всередині блока кожний оператор повинен обмежуватися (;).

Складовий оператор може використовуватися скрізь, де синтаксис мови допускає застосування звичайного оператора.

Порожній оператор

Порожній оператор представляється символом (;), перед котрим немає виразу. Порожній оператор використовують там, де синтаксис мови вимагає присутності в даному місці програми оператора, проте за логікою програми оператор повинен бути відсутнім.

Необхідність у використанні порожнього оператора часто виникає, коли дії, що можуть бути виконані в тілі циклу, цілком поміщаються в заголовку циклу.

Оператори розгалуження та переходу

До операторів розгалуження та переходу відносять if, if else, switch, break, continue, case і goto. Загальний вигляд простих операторів розгалуження такий:

if (логічний_вираз) оператор;

if (логічний_вираз) оператор_1;

else оператор_2;

логічний_вираз ? оператор_1 : оператор_2;

Якщо значення логічного виразу істинно, то виконується оператор_1, у протилежному випадку виконується оператор_2.

Оператор вибору switch є складним оператор розгалуження, що дозволяє організувати вибір більше ніж двох варіантів розгалуження:

switch (вираз_цілого_типу)

{ case значення_1: послідовність_операторів_1; break;

case значення_2: послідовність_операторів_2; break;

. . .

case значення_n: послідовність_операторів_n; break;

default: послідовність_операторів_n+1;

}

Гілку default можна не описувати. Вона виконується, якщо жодна з попередніх умов не задовольняється.

Оператор break не є частиною оператора розгалуження. Він може викликатись у будь якому блоці програми для примусового виходу з блоку (break передає управління оператору, записаному після закриваючої фігурної дужки } блоку).

Оператор continue повертає виконання програми на початок блоку.

Оператор goto є оператором безумовного переходу на мітку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]