Wat is een nulkarakter?
Een nul-teken in computerprogrammering is een teken met de waarde nul. Het verschilt van het cijfer nul, dat deel uitmaakt van de standaard afgedrukte tekenset. Null is eigenlijk een controlekarakter met de index van nul. Het wordt gebruikt om aan te geven dat een variabele, klasse of aanwijzer leeg, niet gedefinieerd of niet geïnitialiseerd is. Een nul wordt ook gebruikt in de C-programmeertaal om het einde van een reeks tekens te markeren.
Het nul-karakter was oorspronkelijk een van een reeks speciale besturingstekens die werden gebruikt om te communiceren met randapparatuur zoals printers of tapedrives. De oorspronkelijke betekenis van null was om een apparaat te instrueren niets te doen. Naarmate de technologie geavanceerder werd, waren besturingspersonages minder nodig voor de interface met externe apparaten. De nul bleef in de meeste tekensets echter op positie nul.
Veel programmeertalen gebruiken het null-teken om aan te geven dat een waarde niet is toegewezen aan een variabele, aanwijzer of klasse. De waarde van null wordt in de kernbibliotheken van de programmeertaal vaak gedefinieerd als de waarde '/ 0', wat zich vertaalt in een leeg teken. Een variabele met de waarde null heeft niet de waarde nul. Nul is een geheel andere tekencode, dus gelijkwaardigheidstests tussen nul en nul zullen een resultaat van onwaar tonen. Dit is van ontwerp, omdat nul een geldige waarde voor een variabele kan zijn.
De programmeertaal die bekend staat als C gebruikt het null-teken met groot effect om geheugenruimte te besparen. Het nul-teken wordt gebruikt als het einde van een reeks tekens, ook wel een nul-beëindigde reeks genoemd. Hierdoor kan het programma een string opslaan waarbij slechts één extra byte nodig is om de null-terminator te bevatten. Het nul-teken kon niet worden weergegeven en werd voor geen enkel ander doel gebruikt, dus dit systeem werkte goed.
Talen die kwamen nadat C null begon te gebruiken om nieuwe variabelen en klassen te initialiseren. De meeste taalspecificaties garanderen feitelijk dat nieuw gedeclareerde variabelen gelijk zijn aan nul. Evenzo kan aan variabelen de waarde null worden toegewezen om aan te geven dat ze geen waarde hebben of dat ze niet naar een geheugenlocatie wijzen.
Bepaalde objectgeoriënteerde talen kunnen het nul-teken gebruiken tijdens het verzamelen van afval. Als een variabele met een instantie van een klasse is ingesteld op nul, worden de gegevens onbereikbaar, tenzij anders wordt verwezen door een andere variabele. Het garbage collection-mechanisme, dat geheugen vrijmaakt dat eerder werd gebruikt, detecteert de nu onbereikbare gegevens en stuurt deze terug naar de beschikbare geheugenpool. Het expliciet toewijzen van een variabele aan nul wordt soms beschouwd als een slechte programmeerstijl.