Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Binary elixir的相同二进制模式匹配在命令行上得到了不同的表示_Binary_Pattern Matching_Elixir - Fatal编程技术网

Binary elixir的相同二进制模式匹配在命令行上得到了不同的表示

Binary elixir的相同二进制模式匹配在命令行上得到了不同的表示,binary,pattern-matching,elixir,Binary,Pattern Matching,Elixir,我不熟悉Elixir,对下面第15行和第17行的两个不同输出感到困惑,即一个是98,另一个是“b”(来自) 这两个匹配只是做同样的事情,因为(IMO)与相同。为什么他们在产出上存在差异?(我知道他们内部是一样的) 顺便说一句,我正在使用Windows操作系统 iex(14)> <<head, rest::binary>> = "banana" "banana" iex(15)> head 98 iex(16)> &

我不熟悉Elixir,对下面第15行和第17行的两个不同输出感到困惑,即一个是
98
,另一个是
“b”
(来自)

这两个匹配只是做同样的事情,因为(IMO)
相同。为什么他们在产出上存在差异?(我知道他们内部是一样的)

顺便说一句,我正在使用Windows操作系统

iex(14)> <<head, rest::binary>> = "banana"
"banana"
iex(15)> head
98
iex(16)> <<head::binary-size(1), rest::binary>> = "banana"
"banana"
iex(17)> head
"b"
iex(14)>=“香蕉”
“香蕉”
iex(15)>头部
98
iex(16)>=“香蕉”
“香蕉”
iex(17)>头部
“b”
的默认类型是
整数
,但当您明确指定它作为
二进制
进行模式匹配时,它将变为
二进制

iex | 1>=“香蕉”
iex | 2>头部
#⇒ 98
iex|3>
#⇒“b”
的默认类型是
整数
,但当您明确指定它作为
二进制
进行模式匹配时,它将变为
二进制

iex | 1>=“香蕉”
iex | 2>头部
#⇒ 98
iex|3>
#⇒“b”