SimpleFunge -Nilclass错误,即使堆栈的顶部不是空的



代码:

91+I-v
     V
     O
     @

我为PPCG(编程难题和代码高尔夫)提交了此代码,但它不起作用。

它返回的错误代码是 /opt/simplefunge/simplefunge.rb:53:in <main>': undefined method ord for nil:nilclass(nomethoderror)

是否有任何解决方案?

您的代码期望通过i命令从stdin输入。如果您不提供输入,则tio.run提供一个空列表。错误消息告诉您的是,解释器无法通过ORD操作将空输入(NIL)转换为数值,该数值是为字符定义的。

这可以在本地复制为:

$ echo -n | ruby simplefunge.rb test.funge 
Traceback (most recent call last):
simplefunge.rb:53:in `<main>': undefined method `ord' for nil:NilClass (NoMethodError)

要解决第一个问题,请提供输入。

您将在代码中的o命令中获得类似的错误,因为先前的V操作将您移至堆栈限制外,再次导致尝试在nil上应用字符操作时,当您尝试将堆栈值打印为字符时:

simplefunge.rb:57:in `<main>': undefined method `chr' for nil:NilClass (NoMethodError)

相关内容

  • 没有找到相关文章

最新更新