NUL
Null character
ControlASCII 0 | Hex 0x00 | U+0000
NUL (code 0) originated on paper tape where it represented a position with no holes punched. Operators used blank tape as leader material without losing data. In C and its descendants, NUL terminates strings, meaning a zero byte marks where a string ends in memory. This convention creates a well-known limitation: C strings cannot contain embedded zero bytes. Unicode inherits NUL at U+0000, and most text protocols treat it as a terminator rather than a valid character.
ASCII Code
Decimal
0
Hexadecimal
0x00
Octal
0
Binary
0000 0000
Unicode
Code Point
U+0000
Escape
\u0000
UTF-8 Hex
0xE2 0x90 0x80
UTF-8 Binary
111000101001000010000000
UTF-16
0x0000
UTF-32
0x00000000
HTML Entities
Numeric
�
Hex
&#x;
How to Type
HTML Entity
�
Unicode InputU+0000
Source Code Representations
C / Java
"\u0000"CSS
\0000JavaScript
"\u0000"Perl
\x{0000}Python 2
u"\u0000"Python 3
\u0000Ruby
\u{0000}Frequently Asked Questions
What is ASCII code 0?
ASCII code 0 represents the Null character character. In hexadecimal it is 0x00, in binary 0000 0000, and in octal 0. This is a non-printable control character used for device signaling and data transmission control.
How do I type ASCII 0 on a keyboard?
Control characters are typically entered using Ctrl key combinations. For example, Ctrl+@ produces ASCII 0 in most terminal emulators. You can also use the HTML entity � in web pages.