Backslash zéro délimiteur '\ 0'
J'ai vu '\0'
pour être utilisé comme un délimiteur dans le mixte des fichiers binaires (UTF8 chaînes + données binaires). Quelqu'un pourrait-il expliquer ce que '\0'
moyens ou point à un bon endroit pour étudier?
source d'informationauteur bancer
Vous devez vous connecter pour publier un commentaire.
C'est le caractère null; plus d'info dans cet article Wikipedia l'article.
Les deux caractères
\0
représentation est utilisé dans le code source C pour représenter le caractère NUL, ce qui est le (seul) caractère ASCII de la valeur 0.NUL caractère est utilisé dans C style de chaînes de caractères pour indiquer où la fin de la chaîne. Par exemple, la chaîne
"Hello"
est codé comme les octets hexadécimaux:Dans ce cas, le compilateur C ajoute automatiquement le
00
octet sur la fin d'une chaîne de caractères entre guillemets. Si vous avez écrit la constante"Hello\0"
alors le compilateur C générer:\0
est un raccourci pour\000
qui est octal caractère d'échappement. En général, vous pouvez raccourcir tout octal d'échappement qui n'est pas suivie par un chiffre octal. Cela découle de la C d'origine des séquences d'échappement (\n \r \t \f \v \b \000
où ce dernier est un personnage de la valeur en octal notation; ANSI ajouté un peu, et\v
est un peu rare ces jours-ci et beaucoup d'autres langues modernes ne pas la mettre en œuvre).