Відмінності між версіями «Висячі вказівники»

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
[перевірена версія][очікує на перевірку]
м (вказівника нульове -> вказівника на нульове)
 
Рядок 1: Рядок 1:
 
'''Завислі вказівники''', '''дикі вказівники''' ({{lang-en|dangling pointers, wild pointers}}) у [[програмування|програмуванні]] — [[вказівник]]и, що не вказують на допустимий [[Змінна (програмування)|об'єкт]] відповідного [[Тип даних|типу]]. Це спеціальні випадки порушення безпеки пам'яті.
 
'''Завислі вказівники''', '''дикі вказівники''' ({{lang-en|dangling pointers, wild pointers}}) у [[програмування|програмуванні]] — [[вказівник]]и, що не вказують на допустимий [[Змінна (програмування)|об'єкт]] відповідного [[Тип даних|типу]]. Це спеціальні випадки порушення безпеки пам'яті.
   
Завислі вказівники виникають тоді, коли об'єкт видалено або переміщено без зміни значення вказівника [[Нульовий вказівник|нульове]], так що вказівник все ще вказує на область пам'яті непереміщених даних. Оскільки система може перерозподілити раніше звільнену пам'ять (у тому числі в інший процес), то обірваний вказівник може призвести до непередбачуваної поведінки програми. У випадку, коли програма записує дані у пам'ять, використовуючи такий вказівник, дані можуть непомітно руйнуватися, що призводить до тонких помилок, які надзвичайно важко знайти.
+
Завислі вказівники виникають тоді, коли об'єкт видалено або переміщено без зміни значення вказівника на [[Нульовий вказівник|нульове]], так що вказівник все ще вказує на область пам'яті непереміщених даних. Оскільки система може перерозподілити раніше звільнену пам'ять (у тому числі в інший процес), то обірваний вказівник може призвести до непередбачуваної поведінки програми. У випадку, коли програма записує дані у пам'ять, використовуючи такий вказівник, дані можуть непомітно руйнуватися, що призводить до тонких помилок, які надзвичайно важко знайти.
   
 
Дикі вказівники виникають, коли вказівник використовується до ініціалізації у відомий стан, що можливо в деяких мовах програмування. Вони такі ж непередбачувані як висячі, проте вони мають менше шансів залишитися непоміченими.
 
Дикі вказівники виникають, коли вказівник використовується до ініціалізації у відомий стан, що можливо в деяких мовах програмування. Вони такі ж непередбачувані як висячі, проте вони мають менше шансів залишитися непоміченими.

Поточна версія на 14:59, 13 березня 2016

Завислі вказівники, дикі вказівники (англ. dangling pointers, wild pointers) у програмуваннівказівники, що не вказують на допустимий об'єкт відповідного типу. Це спеціальні випадки порушення безпеки пам'яті.

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

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

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

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