Co to jest zerowa postać?
Znak zerowy w programowaniu komputerowym jest znak o wartości zerowej. Różni się od zera cyfrowego, który jest częścią standardowego zestawu znaków drukowanych. NULL jest właściwie znakiem kontrolnym o indeksie zerowym. Służy do wskazania, że zmienna, klasa lub wskaźnik jest pusta, niezdefiniowana lub nie zainicjowana. Null jest również używany w języku programowania C, aby zaznaczyć koniec ciąg znaków.
Postać zerowa pierwotnie była serią specjalnych znaków kontrolnych używanych do komunikacji z urządzeniami peryferyjnymi, takimi jak drukarki lub dyski taśmowe. Pierwotnym znaczeniem NULL było pouczenie urządzenia, aby nic nie zrobił. Ponieważ technologia stała się bardziej wyrafinowana, znaki kontrolne były mniej potrzebne do interfejsu z urządzeniami zewnętrznymi. NULL pozostał w większości zestawów znaków, przy pozycji zero.
Wiele języków programowania używa znaku zerowego, aby wskazać, że wartość nie została przypisana do zmiennej, wskaźnika lub klasy. Wartość null toCzęsto zdefiniowane w podstawowych bibliotekach języka programowania jako wartości „/0”, co przekłada się na pojedynczy pusty znak. Zmienna o wartości NULL nie ma wartości zerowej. Zero jest zupełnie innym kodem znaku, więc testy równoważności między zero a NULL pokaże wynik fałszywego. Wynika to z projektowania, ponieważ zero może być prawidłową wartością dla zmiennej.
Język programowania znany jako C wykorzystuje znak zerowy, aby zaoszczędzić przestrzeń pamięci. Znak zerowy jest używany jako koniec ciąg znaków, zwany także null zakończony ciąg. Pozwala to programowi przechowywać ciąg z potrzebą tylko jednego dodatkowego bajtu do przechowywania terminatora zerowego. Nie można było wyświetlić postaci zerowej i nie była używana w żadnym innym celu, więc ten system działał dobrze.
Języki, które pojawiły się po C, zaczęły używać NULL do inicjowania nowych zmiennych i klas. MosT specyfikacje językowe faktycznie gwarantują, że nowo zadeklarowane zmienne będą równe NULL. Podobnie zmienne można przypisać wartość null, aby wskazać, że nie mają one wartości lub że nie wskazują na żadną lokalizację pamięci.
Niektóre języki zorientowane na obiekt mogą używać zerowego znaku podczas procesu zbierania śmieci. Jeżeli zmienna utrzymująca instancję klasy jest ustawiona na NULL, dane stają się nieosiągalne, chyba że inaczej odniesie inaczej inną zmienną. Mechanizm zbierania śmieci, który uwalnia pamięć, która była wcześniej używana, wykrywa niedostępne dane i zwraca je do dostępnej puli pamięci. Jawne przypisanie zmiennej do NULL jest czasem uważane za słaby styl programowania.