私は最近、約5年間この言語に触れていないので、実際に基本的なErlang開発を始めました。すべての項目をそれぞれの行に出力する
私の機能は私の再帰で無限ループに思わなぜ私は悩みの理解を持っている:
-module(list_tut).
-export([print_cities/1]).
-author("kimput").
print_cities([]) ->
ok;
print_cities([H|T]) ->
io:format('city: ~p~n', [H]),
[H|print_cities([T])].
私は次のように都市のリストを入力した場合:
> list_tut:print_cities(['Moscow', 'Tokyo', 'Stockholm']).
それはすべて印刷します項目を速くしてから印刷を続行しますcities: []
。
私はこれが絶対初心者の質問だと理解していますが、私は長い間この問題を見てきましたが、テール再帰やそれに類するものを追加することなく解決する方法を見つけることはできません...
アドバイスは非常に気に入られるでしょう! :)
感謝の男!私はそれがコードのどこかで小さな間違いだったと確信していました。神様、今私は恥ずかしいと感じます。:P – geostocker