Null : définition informatique technique et variantes

Valeur présente dans de nombreux langages informatiques tels que Java, Null désigne l'état d'un pointeur n'ayant ni variable ni cible. Remarquée dans les langages C et C++, elle possède plusieurs variantes selon les programmes.

Qu'est-ce qu'une valeur Null en langage informatique ?

Dans de multiples langages informatiques, Null est considéré soit comme une valeur, soit comme une constante. On le retrouve principalement dans les langages C++ et C++, ainsi que dans ceux proches de Java, JavaScript ou encore PHP. La valeur Null signifie l’état d’une variable qui n’a pas de valeur, qui n’a pas encore été initialisée, ou celle d’un pointeur qui ne possède pas de cible. Le pointeur ne doit d’ailleurs pas être confondu avec le caractère ASCII Nul, qui ne dispose que d’un seul L et qui est utilisé pour marquer la fin d’une chaîne de caractères. Il ne doit pas être assimilé non plus à un dispositif Null, qui équivaut en fait à un fichier spécial qui supprime toutes les données écrites. Null est généralement écrit en majuscules et est aussi employé lorsque la valeur a été effacée avec la fonction « unset() ». On parle aussi parfois de mot-clé, lorsque la valeur d’une donnée est inconnue ; Null désigne alors une absence de données.

Une valeur Null ne peut être traitée comme une valeur normale. L’erreur que font souvent les débutants est de considérer la valeur Null comme égale à zéro ou blanc, ce qui est faux, contrairement au domaine des mathématiques. Elle ne peut pas être assimilée non plus à un caractère ou à un terminateur. Il peut s’agir d’une erreur dans le code du programme. Pour éviter ce cas précis, il est important de la remplacer par une valeur spécifique afin de pouvoir l’utiliser comme n’importe quelle autre donnée. Pour ce faire, on peut employer la valeur « NaN » pour « Not a Number » pour les nombres dits « flottants », afin d’attribuer une valeur au résultat d’un calcul impossible.

La valeur Null est généralement contenue dans une colonne. Elle indique dès lors que celle-ci ne contient rien pour une ligne donnée. L’utilisateur a le choix, dès le départ, de déclarer s’il autorise ou non ce type de valeur dans chacune de ses colonnes. Pour la renseigner, il ne doit pas l’entourer d’apostrophes ni de guillemets. 

Quelles sont les variantes de null selon les langages informatiques ?

Null n’est pas le seul terme employé en informatique pour désigner une absence de valeur. Le mot diffère en fonction des langages. Il peut s’écrire entièrement en majuscules ou être nommé différemment, comme c’est le cas en Python, où l’on parlera plutôt de None. En JavaScript, on emploie aussi bien le terme de Null que Undefined pour exprimer le vide. Pourtant, les deux mots possèdent une signification différente. Si Null signifie que la valeur a été assignée, mais à un contenu vide, Undefined veut dire que la valeur n’a pas encore été assignée et qu’on ne sait donc pas ce qu’elle contient. En C, Null est défini dès les fichiers d’en-tête par « stddef.h » et « stdlib.h », alors qu’en C++, Null est remplacé par la constante zéro. En PHP, une variable de valeur Null équivaut à comme étant non définie. Dans d’autres langages, comme Lisp, Smalltalk ou Ruby, on remplacera Null par Nil. Enfin, en C++, la constante Null est mise de côté au profit du mot-clé « nullptr ». Dans tous les cas, le nom ne change en rien la valeur dans le programme en question. En effet, pour un type variant, Null signifiera qu’il n’est pas affecté, alors que pour un type numérique, cela voudra dire que Null est égal à zéro.

Il est important de noter qu’en langage informatique, il est possible de filtrer les résultats qui contiennent la valeur Null par le biais de l’opérateur IS. En effet, cette dernière ne peut pas être détectée par des opérateurs dits de comparaison, dans la mesure où la valeur est inconnue. Au contraire, si l’on est à la recherche de tous les résultats, excepté les valeurs Null, il faudra recourir à la forme Is Not.

Langages