Caractère nulLe caractère nul (en anglais, null character, null terminator ou null byte, abrégé en NUL ou NULL) est un caractère de contrôle avec la valeur zéro[1],[2],[3],[4]. Il est présent dans de nombreux jeux de caractères, notamment ISO/CEI 646 (ou ASCII), C0 and C1 control codes (en), ISO/CEI 10646 (Unicode) et EBCDIC. Il est aussi disponible dans presque tous les langages de programmation traditionnels[5]. Ce caractère existe déjà dans le Code Baudot sans pouvoir être utilisé, l'absence de signal ne permettant pas de porter de l'information. La signification originale de ce caractère ressemblait à l'instruction nulle : lorsqu’il est envoyé à une imprimante ou à un terminal, il ne fait rien (certains terminaux l’affichent toutefois à tort comme un espace). Lorsque les téléscripteurs électromécaniques étaient utilisés comme périphériques de sortie informatiques, un ou plusieurs caractères nuls étaient envoyés à la fin de chaque ligne pour laisser le temps au mécanisme de revenir à la première position d'impression sur la ligne suivante. Sur une bande perforée, le caractère nul est représenté par une absence de perforations. Ainsi, une nouvelle bande non perforée est remplie avec des caractères nuls. Un texte peut souvent être inséré dans un espace réservé par des caractères nuls en perforant les nouveaux caractères sur les caractères nuls. Aujourd'hui, le caractère a beaucoup d'importance dans le langage C et ses dérivés et dans de nombreux formats de données où il sert de caractère réservé utilisé pour signifier la fin d'une chaîne de caractères[6], souvent appelée une null-terminated string (en)[7]. Cela permet à la chaîne d'être de n'importe quelle longueur avec une surcharge d'un seul octet, l'alternative consistant à stocker un compte de caractères ce qui impose une limite de longueur de chaîne de 255 pour un compteur d'un octet ou une surcharge de plus d'un octet. CodageDans tous les jeux de caractères modernes, le caractère nul a une valeur de zéro. Dans la plupart des codages, cela est implanté en une seule unité#non de code avec une valeur nulle. Par exemple, dans UTF-8, il s'agit d'un seul octet contenant 8 bits de valeur zéro. Toutefois, dans UTF-8 modifié, le caractère nul est codé sous forme de deux octets : 0xC0, 0x80. Cela permet à l’octet de valeur zéro, qui n’est maintenant utilisé pour aucun caractère, d’être utilisé comme indicateur de fin de chaîne de caractères. Références(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Null character » (voir la liste des auteurs).
Voir aussiArticles connexes |