2

给定以下 Ruby 程序:

def getch
  begin
    system("stty raw -echo")
    ch = STDIN.getc
    puts "[#{ch}]"
    ch
  ensure
    system("stty -raw echo")
  end
end

print "Press a key: "
getch
puts "Have a nice day!"

和以下运行:

$ ruby a.rb 
Press a key: [t]
              Have a nice day!

为什么“祝你有美好的一天!” 是缩进的?为什么输出不是这样:

$ ruby a.rb 
Press a key: [t]
Have a nice day!

?

4

1 回答 1

2

好的,添加opost应该可以解决它。将您的第三行更改为如下所示:

system("stty raw opost -echo")

我希望这是您正在寻找的答案。

于 2012-01-25T12:48:22.517 回答