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()
コマンドを実行し、それらを一度に実行するとputs
、prints
すべてが一度に実行されます。
この動作を修正する方法はありますか? 私は明らかに、書かれた順序で行を実行したいと考えています。このタイプのエラーについて何をグーグルで検索すればよいかわかりませんでした.「cygwin」、「ruby」、「puts output delay」、「gets out of order」の組み合わせでは、関連するものは何も返されませんでした。とにかく、これらの検索用語は漠然としているようです。
正確に何が起こっているのですか?解決策はありますか?