我可以在Erlang中执行此操作:
io:fwrite("~.16X~n", [-31,"0x"]).
-0x1F
ok
但不是Elixir:
:io.fwrite("~.16X~n", [-31,"0x"])
** (ArgumentError) argument error
(stdlib) :io.format(#PID<0.54.0>, "~.16X~n", [-31, "0x"])
为什么不呢?
答案 0 :(得分:4)
为什么不使用Integer.to_string/2
?
iex(1)> Integer.to_string(-31, 16)
"-1F"