Em programação de computadores, null é um valor especial para um ponteiro (ou qualquer outro tipo de referência) que indica que este ponteiro, intencionalmente, não se refere a um objeto (ponteiro nulo). Freqüentemente, nos programas escritos na linguagem C, um valor binário 0 (zero) é utilizado como valor nulo, já que a maioria dos sistemas operacionais consideram um erro acessar um endereço de memória "tão baixo".

Significados em outras áreas da Ciência da Computação

editar

O valor null é utilizado em outras disciplinas da Ciência da Computação (muitas vezes com as variações nul ou nil):

  • Nos sistemas operacionais do tipo Unix, o dispositivo /dev/null é uma referência ao dispositivo nulo, um arquivo especial que descarta dados enviados para ele e que não retorna dados para os processos que o lêem. Nos sistemas DOS e Microsoft Windows o dispositivo NUL tem comportamento similar.
  • Nos conjunto de códigos de controle C0, definido na ISO646 e utilizado na tabela ASCII e no padrão de codificação Unicode, o código de valor 0 é chamado de caractere nulo.
  • Em algumas linguagens de programação, como o LISP, Pascal (o Delphi e algumas variações do Pascal utilizam "null" para a "variante null", fato que provoca confusões que levam a erros, quando o "null" é utilizado no lugar do "nil") e na linguagem de programação Ruby, este valor é chamado de nil.
  • Em muitas disciplinas, o conceito de null permite a lógica de múltiplos valores, com o valor null indicando "valor desconhecido". A linguagem de base de dados SQL utiliza o "Null" desta maneira, como faz o Visual Basic (com o termo "Nothing") e os seus derivados. Neste modelo, uma expressão que depende do valor de um operando Null irá retornar Null (Visual Basic) ou "valor desconhecido" (SQL). Portanto, para qualquer A, a expressão "A = Null" e "A <> Null" não resulta em verdadeiro ou falso. Porém, a operação booleana "A e falso" produz falso e, de forma similar, "A ou verdadeiro" é verdadeiro mesmo quando A é igual a Null, devido ao fato destas expressões não dependerem do valor de A. (Algumas implementações da linguagem SQL podem considerar A = Null igual a verdadeiro se A tem valor Null).
  • Em algumas linguagens de programação, o caractere null pode significar o fim de uma string.

É importante notar que o "null" (nulo) não tem o mesmo significado que o "nada", pois é relacionado apenas com a Ciência da Computação.

Ver também

editar

📚 Artikel Terkait di Wikipedia

Ponteiro (programação)

sample_data(100) type (real_list_t), pointer :: next => null () end type type (real_list_t), target :: my_real_list type (real_list_t), pointer :: real_list_temp real_list_temp

Oberon (linguagem de programação)

através de módulos, e index checking em tempo de execução, verificação de null pointer, e o conceito de extensão tipagem segura amplamente permitiram programação

OpenCL

flags CL_MEM_COPY_HOST_PTR, sizeof(cl_float)*n, // size a_h, // host pointer NULL); // error code // create the program cl_program program = clCreateProgramWithSource(

Lista ligada

elemento na lista Node *pointer = new Node; if (!head) return false; pointer = head; for (; pointer; pointer = pointer->next) if (pointer->value == x) return

Stdlib.h

zero, long int zero, ou zero "cast" para void * pointer: #define NULL 0 #define NULL 0L #define NULL ((void *) 0) Nota: Apesar do ponteiro nulo constante

Guarda (computação)

a ser processada seja não nula, o que evita falhas de ponteiro nulo (null-pointer). Knuth, Donald (2008). The Art of Computer Programming. Volume 4, Pre-fascicle

Ponteiro inteligente

apontador inteligente (também conhecido pelo termo em língua inglesa smart pointer) é um tipo de dado abstrato que simula um apontador. Ele fornece mais funcionalidades

Alocação de memória

que estão dispersos ou espalhados na memória usa-se as variáveis do tipo pointer (indicadores de endereços de memória). É importante ressaltar que, na maioria