Вирази в c

Вирази і операції

Вислови є безліч даних пов'язаних між собою операціями - особливими операторами мови, які повертають деяке значення. Аргументи операцій називають операндами. Більшість операцій або унарні (з одним операндом) або бінарні (з двома операндами). Також операції характеризуються пріоритетом (старшинством) виконання в вираженні. Наприклад, результат виразу 4 + 5 * 2 буде 14, а не 18, так як операція множення має більший пріоритет, ніж складання. Операції однакового пріоритету виконуються послідовно зліва направо.

унарні арифметичні операції

  • ++ - інкремент, збільшує значення цілочисельний змінної на 1;
  • -- - декремент, зменшує значення цілочисельний змінної на 1;
  • + - залишає знак числа;
  • - - змінює знак числа.

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

Бінарні арифметичні операції

  • + - складання чисел або рядків;
  • - - віднімання чисел;
  • * - множення чисел;
  • / - ділення чисел;
  • % - обчислення залишку від ділення чисел.

операції відносини

логічні операції

побітові операції

Дані операції виконуються над цілочисельними типами.

- побітовое інвертування;
  • >> - бітовий зсув вправо;
  • <<- битовый сдвиг влево.
  • операції з пам'яттю

    доступу до членів класу

    • . - доступ до члена класу;
    • -> - доступ до члена класу за вказівником;
    • .* - доступ до покажчика на член класу;
    • -> * - доступк вказівником на член класу за вказівником.

    перетворення типів

    • () - перетворення типів (старий стиль);
    • const_cast - змінює атрибут const у об'єкта;
    • dynamic_cast - динамічне перетворення;
    • reinterpret_cast - перетворення типу покажчика;
    • static_cast - звичайне перетворення.

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

    • = - привласнює лівому операнду значення правого операнда;
    • op = - виконує операцію op над операндами і зберігає результат в лівому операнде.

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

    • () - виклик функції;
    • , - кома, дозволяє обчислити послідовно кілька виразів (наприклад, зручно використовувати в циклі for);
    • :: - операція розширення видимості;
    • . - умовна операція;
    • sizeof - визначає розмір операнда;
    • typeof - визначає тип операнда;
    • typeid - повертає інформацію про тип.

    Для деяких операцій в stl визначені буквені еквіваленти:
    and, bitand, compl, not_eq, or_eq, xor_eq, and_eq, bitor, not, or, xor.

    Схожі статті