gpt4 book ai didi

Erlang 列出了 :map behaving strange

转载 作者:行者123 更新时间:2023-12-04 05:10:11 25 4
gpt4 key购买 nike

好的,这里是:

我得到了一段这样的代码:

A=lists:map(fun(Result) -> Result#o.prop1 
end, ResultList),
B=lists:map(fun(Result) -> io:format("~p~n",Result#o.prop2),
Result#o.prop2
end, ResultList),
io:format("~p ~p",[A,B])

在这段代码之前,有一个来自数据库搜索的结果列表(每个结果的 prop1 值标记为“0”,prop2 值标记为“74”)。

发生的情况是 A 打印得恰到好处(“[0,0]”),而 B 元素的第一个打印是正确的(“74”的两个打印),列表本身打印为“JJ”(这些字符是每次执行总是不同的)

如果我逐个删除元素打印,或者即使我切换顺序(B 的行然后是 A 的行),我总是得到一个搞砸的 B。

有什么帮助吗?

最佳答案

您看到 J 而不是 74 的原因是因为 Erlang 将字符串视为整数列表,而 J 在 ASCII 中是 74(十进制)。

1> io:format("~s~n", [[74, 74]]).
JJ
ok
2> io:format("~s~n", [[71, 72, 73, 74, 75]]).
GHIJK
ok
3> io:format("~p~n", [[71, 72, 73, 74, 75]]).
"GHIJK"
ok

关于Erlang 列出了 :map behaving strange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14986603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com