Punter nul

Patró de disseny d'objectes nuls en UML.

En informàtica, un punter nul o una referència nul·la és un valor desat per indicar que el punter o referència no fa referència a un objecte vàlid. Els programes utilitzen habitualment punters nuls per representar condicions com ara el final d'una llista de longitud desconeguda o la fallada per realitzar alguna acció; aquest ús de punters nulls es pot comparar amb els tipus anul·lables i amb el valor Nothing d'un tipus d'opció.

Un punter nul no s'ha de confondre amb un punter no inicialitzat: es garanteix que un punter nul es compara desigual amb qualsevol punter que apunti a un objecte vàlid. Tanmateix, depenent de l'idioma i la implementació, és possible que un punter no inicialitzat no tingui cap garantia. Podria comparar-se igual a altres punters vàlids; o podria comparar-se igual a punters nuls. Pot fer les dues coses en diferents moments; o la comparació pot ser un comportament indefinit.

Com que un punter nul no apunta a un objecte significatiu, un intent d'accedir a les dades emmagatzemades en aquesta ubicació de memòria (no vàlida) pot provocar un error en temps d'execució o una fallada immediata del programa. Aquest és l'error del punter nul. És un dels tipus més comuns de debilitats del programari,[1] i Tony Hoare, que va introduir el concepte, s'ha referit a ell com un "error de mil milions de dòlars".

  1. «CWE-476: NULL Pointer Dereference» (en anglès). MITRE.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne