gpt4 book ai didi

ruby - 为什么我的程序在提示用户之前接受用户输入?

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:51 25 4
gpt4 key购买 nike

我正在尝试制作一个控制台程序,询问用户的姓名,并向他们打招呼。我在 Notepad++ 中编码,并在 git bash 控制台中运行它。我的代码是:

puts "Hello, please type in your name: "
name = gets.chomp
puts "Hello #{name}, it is a pleasure to meet you!"

当它运行时,它会等待用户输入,一旦输入,它就会打印:

Hello, please type in your name:
Hello <name_the_user_entered>, it is a pleasure to meet you!

即使用户提示在代码中首先出现,它也会在打印任何测试之前接受用户输入。我错过了什么吗?

最佳答案

Ruby 可能正在缓冲输出。要强制执行它,请使用 flush:

$stdout.puts "Hello, please type in your name: "
$stdout.flush
name = gets.chomp
puts "Hello #{name}, it is a pleasure to meet you!"

但我认为在较新的 Ruby 版本中,这不是必需的。

关于ruby - 为什么我的程序在提示用户之前接受用户输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52805976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com