Scheme 鸡方案中的错误处理
我正在做一个基本的端口扫描仪。 当我连接到已关闭的服务器时,我正在尝试打印“已关闭” 连接到打开的端口时,端口和“打开” 现在我正在这样做:Scheme 鸡方案中的错误处理,scheme,chicken-scheme,Scheme,Chicken Scheme,我正在做一个基本的端口扫描仪。 当我连接到已关闭的服务器时,我正在尝试打印“已关闭” 连接到打开的端口时,端口和“打开” 现在我正在这样做: (condition-case (tcp-connect (list-ref host 0) port) [(exn) (print "closed")] ['nil (print "open")])) 我的open在应该打印的时候打印不正确(使用netcat进行了测试)。 我如何理解条件情况是它匹配错误。我正在尝试处理无错误的情况,即连
(condition-case (tcp-connect (list-ref host 0) port)
[(exn) (print "closed")]
['nil (print "open")]))
我的open在应该打印的时候打印不正确(使用netcat进行了测试)。
我如何理解条件情况是它匹配错误。我正在尝试处理无错误的情况,即连接成功
有没有更好的方法?我觉得我想得太多了。不熟悉鸡肉,我希望你想要这样的东西:
(condition-case
(begin (tcp-connect (list-ref host 0) port)
(print "open"))
[(exn) (print "closed")])
也就是说,
condition case
的表达式是“快乐路径”(就像Java中的一个try块)。不熟悉鸡肉,我希望这样的东西是您想要的:
(condition-case
(begin (tcp-connect (list-ref host 0) port)
(print "open"))
[(exn) (print "closed")])
也就是说,给定给条件case
的表达式是“快乐路径”(类似于Java中的try块)