Erlang:使用表示法从基数2转换回十进制时出错

Erlang:使用表示法从基数2转换回十进制时出错,erlang,Erlang,为了得到以B为底的数字N的十进制等价物,我可以做BN,所以16F输出15,21111也输出15 要将一个数字(比如15)从十进制转换为二进制,我可以使用整数列表15,2,它输出1111,可以通过使用列表整数将其转换为一个数字。所以,做列表到整型整数到列表15,2+1。完全有效,输出1112 我检查列表列表15,2是否为整数,列表列表列表15,2是否为整数,列表列表2是否为整数,列表列表15,2是否为整数,列表列表15,2是否为整数,列表列表15,2是否为整数 但是,当我尝试执行2list_to_

为了得到以B为底的数字N的十进制等价物,我可以做BN,所以16F输出15,21111也输出15

要将一个数字(比如15)从十进制转换为二进制,我可以使用整数列表15,2,它输出1111,可以通过使用列表整数将其转换为一个数字。所以,做列表到整型整数到列表15,2+1。完全有效,输出1112

我检查列表列表15,2是否为整数,列表列表列表15,2是否为整数,列表列表2是否为整数,列表列表15,2是否为整数,列表列表15,2是否为整数,列表列表15,2是否为整数

但是,当我尝试执行2list_to_integerinteger_to_list15,2时,为什么它会给我一个错误*1:非法整数而不是15

这里也一样:

2> Name = "Yogesch".
"Yogesch"

3> "Name".
"Name"
4> 

8> "list_to_integer(integer_to_list(10))".
"list_to_integer(integer_to_list(10))"
每种计算机编程语言都有语法规则。语法210101用于整数文本。值得注意的是,2不是函数名,因此您不能编写21010,也不能:


2和空格是整数文本的分隔符,就像引号是字符串的分隔符一样,字符串随后被解释为整数列表。

进一步尝试,我发现如果执行211,则得到3,如果执行Var=11,然后执行2Var,则得到错误。似乎编译器在看到散列符号时做了特殊处理,任何东西,例如,一个明显不在正确的基中的变量,都会给出一个错误。对不起,我在写第一个CommentOfc215时打错了,我的意思是125,所以我在看你的答案之前删除了它。是的,我看到了,尽管打错了,它让我有了进一步尝试的想法,并得到了我在之前的评论中提到的结果。所以,spasiba:-在这种情况下,Means不能应用任何rest选项,使用这个符号不是记录,也不是映射,这是一个明显的错误,因为它不是一个有效的表达式。如果再深入一点,integer是,basevalue是单个表达式,而不是像Base那样的复杂表达式,Value.'N'不是一个函数,而是一个整数文本。我所有的困惑都源于另一种想法。毕竟,它给人的印象是做了类似于函数的事情:从一个基转换到另一个基。谢谢你的澄清。@Yogesch,不客气。还请注意,双引号(例如abc)将字符转换为列表[97,98,99]。
10> X = "1010".
"1010"

11> 2#(X).
* 1: illegal integer