我正在尝试编写一个程序,该程序将读入一个数字,然后将该数字的每个数字输出到列表中。然而,在我尝试使用数字 8 和 9 之前,大多数事情看起来都很好。该程序仅输出\b
\t
反而。
如果输入的数字包含8或9,同时还有其他数字,例如283
,就可以正常打印了。否则如果只有8或9个,比如8
, 99
,然后它会给我 8 和 9 的二进制表示(如果我没记错的话)。
我的程序如下:
digitize(0)-> 0;
digitize(N) when N < 10 -> [N];
digitize(N) when N >= 10 -> digitize(N div 10)++[N rem 10].
该函数返回预期的列表,但 shell 显示数字列表,这些数字是字符的 ASCII 代码作为字符串(因为这正是字符串的含义)are在 Erlang 中;没有特殊的字符串类型)。只需输入即可看到[8, 8]
(例如)在提示符下并通过调用禁用此行为shell:strings(false)
(and shell:strings(true)
当您再次需要正常行为时)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)