守卫没有捕捉到正确的数据

Guard not catching the correct data

这是我的代码,我不明白为什么我的第二个守卫没有捕捉到数据。正如您在调试器上看到的那样,数据是相同的。除非我是瞎子,否则我看不到问题

Data 绑定到值 "hey\n",但是您收到的 {tcp,S,_} 元组有第 3 个元素 "HEY\n",它不等于值Data 个。将 receive 子句更改为:

{tcp,S,Data2} ->

或其他一些未绑定的变量名称 — Data 以外的任何名称 — 一切都会好起来的。