Мультиплікативні операції До мультиплікативних операцій відносяться операції множення *, ділення / і отримання залишку від ділення %. Операндами операції % повинні бути цілі значення. Операції множення * і ділення / виконуються над цілими і плаваючими операндами. Типи першого і другого операндів можуть відрізнятися, при цьому виконуються перетворення операндів за замовчуванням. Типом результату є тип операндів після перетворення. В процесі виконання мультиплікативних операцій ситуація переповнювання або втрати значущості не контролюється. Якщо результат мультиплікативної операції не може бути представлений типом операндів після перетворення, то інформація втрачається. Множення (*) Операція множення виконує множення одного з своїх операндів на іншій. Ділення (/) Операція ділення виконує ділення першого свого операнда на другий. Якщо обидва операнди є цілими значеннями і не діляться без остачі, то результат заокруглюється в сторону нуля. Ділення на нуль дає помилку під час виконання. Залишок від ділення (%) Результатом операції є залишок від ділення першого операнда на другий. Знак результату співпадає із знаком ділимого. Приклади: int i=10, j=3, n; double x = 2.0, у; у = x * i; /* приклад 1 */ n = i / j; /* приклад 2 */ n = i % j; /* приклад 3 */ Адитивні операції До адитивних операцій відносяться додавання ( +) і віднімання (-). Їх операндами можуть бути цілі і плаваючі значення. В деяких випадках адитивні операції можуть також виконуватися над адресними значеннями. Над операндами виконуються перетворення за умовчанням. Типом результату є тип операндів після перетворення. В процесі виконання адитивних операцій ситуація переповнення або втрати значущості не контролюється. Якщо результат аддитивної операції не може бути представлений типом операндів після перетворення, то інформація втрачається. Додавання ( +) Операція додавання ддодає два свої операнди. Операнди можуть мати цілий або плаваючий тип. Типи першого і другого операндів можуть розрізнятися. Один з операндів може бути покажчиком; тоді інший повинен бути цілим значенням. Коли ціле значення (назвемо його i) додається до покажчика, то i масштабується шляхом множення його на розмір типу, з яким асоційований даний покажчик. Після перетворення ціле значення представляє i комірок пам'яті, де кожна комірка відповідає за розміром типу, з яким асоційований даний покажчик. Коли перетворене ціле значення додається до покажчика, то результатом є покажчик, що адресує область пам'яті, розташовану в i комірках далі від первинної адреси. Новий покажчик вказує на той же самий тип даних, що і початковий покажчик. Віднімання (-) Операція віднімання віднімає другий операнд від першого. Операнди можуть мати цілий або плаваючий тип. Типи першого і другого операндів можуть розрізнятися. Допускається віднімання цілого з покажчика і віднімання двох покажчиків. Коли ціле значення віднімається з покажчика, попередньо проводиться те ж масштабування, що і при додаванні цілого значення з покажчиком. Результатом віднімання буде покажчик, що адресує область пам'яті, розташовану в i комірках перед первинною адресою. Новий покажчик вказує на той же самий тип даних, що і початковий покажчик.