Невизначена поведінка

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Неви́значена поведі́нка (англ. Undefined behaviour) — Властивість деяких мов програмування (Найбільш помітно в C) залишати результат деяких операцій невизначеним конкретно. Ця міра призводить до спрощення специфікації і деякому підвищенню гнучкості подібних мов(що часто характеризуються відсутністю вбудованої перевірки на границю масиву, і т.д.).

В мові Сі, наприклад, використання змінної до її ініціалізації призводить до невизначеної поведінки. Згідно зі специфікацією компілятор повинен в даному випадку зробити щось, що може здатися найефективнішим/простим. Невизначена поведінка виникає при спробі звернення до змінної.

Ще один приклад невизначеної поведінки: незвичайна поведінка з ANSI-директивою «#pragma». Згідно зі специфікацією мови компіляторам надана повна свобода при обробці даної конструкції. До версії 1.17 компілятор GCC при знаходженні в коді даної директиви намагався запустити Emacs з грою «Ханойські Вежі».

Посилання[ред.ред. код]


Комп'ютер Це незавершена стаття про комп'ютери.
Ви можете допомогти проекту, виправивши або дописавши її.