ASCII仅适用于角色。 NULL 不是字符,那么为什么 NULL 的ASCII值为0
答案 0 :(得分:11)
ASCII仅适用于[可打印]字符[s]
不完全:除了可打印的字符外,ASCII还包含许多控制字符。
ASCII码0(NUL)就是这样一个控制字符。
引用Wikipedia:
ASCII为控制字符保留前32个代码(数字0-31为十进制):代码最初不是为了表示可打印信息,而是为了控制使用ASCII的设备(如打印机),或提供元代码有关数据流的信息,例如存储在磁带上的数据流。例如,字符10表示“换行”功能(使打印机前进其纸张),字符8表示“退格”。
现在,NUL字符最常用于表示C中字符串的结尾。然而,它的最初目的是was different:
这个角色的原始含义就像NOP一样 - 当发送到打印机或终端时,它什么都不做(但有些终端不正确地将它显示为空格)。当机电电传打字机用作计算机输出设备时,在每个打印行的末尾发送一个或多个空字符,以允许机构有时间返回到下一行的第一个打印位置。在穿孔带上,角色表示没有任何孔,因此新的未打孔磁带最初填充空字符,并且通常可以通过将新字符打入磁带中而将文本“插入”空字符的保留空间空值。