Нульовий вказівник: відмінності між версіями
Перейти до навігації
Перейти до пошуку
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
Addbot (обговорення | внесок) м Вилучення 1 інтервікі, відтепер доступних на Вікіданих: d:q11761919 |
Hjvfy (обговорення | внесок) Немає опису редагування |
||
Рядок 10: | Рядок 10: | ||
* У мові [[Visual Basic]]: '''Nothing''' |
* У мові [[Visual Basic]]: '''Nothing''' |
||
[[Тоні |
[[Тоні Гоар]], який винайшов нульовий вказівник у 1965 році, вважає це помилкою, яка імовірно коштувала мільярди доларів, оскільки спроба розіменування нульового вказівника зазвичай приводить до збою й припинення роботи програми |
||
<ref>[http://qconlondon.com/london-2009/presentation/Null+References:+The+Billion+Dollar+Mistake Tony Hoare. Null References: The Billion Dollar Mistake]</ref>. |
<ref>[http://qconlondon.com/london-2009/presentation/Null+References:+The+Billion+Dollar+Mistake Tony Hoare. Null References: The Billion Dollar Mistake]</ref>. |
||
Версія за 17:29, 1 вересня 2014
Нульовий (порожній) вказівник — вказівник, який нікуди не вказує. Використовується для того, щоб показати, що дана змінна-вказівник ні на що не посилається. У різних мовах програмування представлений різними константами, наприклад:
- У машинних кодах: 0
- У мовах Pascal, Clipper, Modula 2, Ruby, Lua : nil
- У C-подібних мовах: NULL
- У мовах Java та C#: null
- У мові Icon: &null
- У мові Python: None
- У мові Visual Basic: Nothing
Тоні Гоар, який винайшов нульовий вказівник у 1965 році, вважає це помилкою, яка імовірно коштувала мільярди доларів, оскільки спроба розіменування нульового вказівника зазвичай приводить до збою й припинення роботи програми [1].
Особливості використання в різних мовах
ANSI C гарантує, що значення NULL еквівалентне 0, тому записи <code|C>
int *a, *b; a = NULL; b = 0;
еквівалентні — вказівники a та b отримають однакове значення.
На відміну від C в Паскалі, який є дуже суворим щодо типів, Nil в жодному випадку не еквівалентний числу 0.
Примітки
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |