0

Learn Ruby the Hard Way の演習 14を実行しています。スクリプトを cmd で実行すると問題なく動作しますが、Cygwin の方が優れているため使用しています。このコマンドを使用してcygwinで実行すると:

ruby ex14.rb Devon

次の出力が得られます

test
one
two
Hi Devon, I'm the ex14.rb script.
I'd like to ask you a few questions.
Do you like me Devon?
> Where do you live Devon?
> What kind of computer do you have?
> Alright, so you said test about liking me.
You live in one.  Not sure where that is.
And you have a two computer.  Nice.

つまり、プログラムが起動してすぐに 3 つのSTDIN.gets.chomp()コマンドを実行し、それらを一度に実行するとputsprintsすべてが一度に実行されます。

この動作を修正する方法はありますか? 私は明らかに、書かれた順序で行を実行したいと考えています。このタイプのエラーについて何をグーグルで検索すればよいかわかりませんでした.「cygwin」、「ruby」、「puts output delay」、「gets out of order」の組み合わせでは、関連するものは何も返されませんでした。とにかく、これらの検索用語は漠然としているようです。

正確に何が起こっているのですか?解決策はありますか?

4

1 に答える 1