Caractere nulo
Na ciência da computação, o caractere nulo (português brasileiro) ou carácter nulo (português europeu) (null character) ou terminador nulo é um caractere da tabela ASCII e do conjunto de caracteres Unicode cujo valor é 0 (zero). OrigemOriginalmente, este caracter tinha o mesmo significado da instrução NOP da linguagem assembly; quando enviada a uma impressora ou terminal de computador, ela não tinha qualquer efeito (alguns terminais, porém, mostravam esta instrução (erroneamente) como um espaço). Na fita perfurada este caractere é representado pela ausência de perfuração, consequentemente uma fita ainda não usada é completamente preenchida com caracteres nulos. CarácterEm muitos computadores e teclados de terminais de dados, é possível inserir um caracter nulo pressionando simultaneamente a tecla control e a tecla "@" (usualmente, além disso é necessário pressionar a tecla shift e outra tecla como a "2" ou "P"). Consequentemente, em alguns contextos, o caracter nulo é representado visualmente como " O carácter nulo e a representação de stringsNa linguagem de programação C existe um significado especial para este caracter. Ele é utilizado para indicar o final de strings de caracteres. O caracter nulo é freqüentemente representado como " Em algumas linguagens (como Pascal) o caracter nulo não é utilizado, pois as strings são armazenadas em um array precedido pelo tamanho desta string. A principal vantagem da utilização do caracter nulo em strings é que elas podem ter qualquer tamanho, e apenas um caracter adicional é necessário. As strings terminadas pelo caracter nulo podem ter vantagens de desempenho, já que operações que percorrem uma string não precisam manter o registro de quantos caracteres foram vistos, e operações que modificam o tamanho da string não precisam atualizar o array com o novo tamanho. O desempenho de cache também pode ser melhor. Por outro lado, a vantagem em armazenar o tamanho da string é que ele fica disponível imediatamente; um programa utilizando strings terminadas em nulo precisa contar todos os caracteres para determinar o tamanho da string. Além disso, em strings não terminadas em nulo é possível incluir o caracter nulo no meio de uma string, simplificando o processamento de dados e eliminando exceções. Em strings terminadas em nulo, a primeira ocorrência de um caracter nulo é interpretada como o final da string. Entretanto, o tipo de dado utilizado para armazenar o tamanho da string também é importante; se o tamanho é armazenado como um byte, como no Pascal, as strings tem um limite de tamanho de 255 caracteres. Tipos de dados maiores, por outro lado, tomam mais espaço de memória que o caracter nulo (um número de 16 bit ocupa dois bytes e um número de 32 bit ocupa quatro). Nos anos 70, quando a linguagem C foi projetada, os limites de espaço em memória eram considerados problemas muito mais importantes do que hoje, o que levou a escolha de strings terminadas com o caracter nulo. Padronização
|
Portal di Ensiklopedia Dunia