问题标签 [gets]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 从控制台传递参数时,Ruby 获取方法抛出异常
我从下面的代码中经历了一些奇怪的行为:
当我通过 true$DEBUG
在执行时设置为 true 时,我收到一个错误name = gets
,我不知道为什么。如果我不通过命令行传递参数,一切正常。
这是错误输出:
如果需要,我可以发布类定义,但我认为这不是问题的一部分。
c - while循环在C中获得()两次
我知道这个 while 循环问题很常见,通常是由输入流中的换行符引起的。但是,我无法修复我的 while 循环,而且我真的不明白为什么会发生这种情况。
考虑以下示例:
忽略此代码的实现(例如,将输入存储为整数而不是字符串等),因为它只是我的 while 循环案例的简化版本。让我担心的是,在它真正通过循环之前,我必须输入两次数字。
输出:
进入菜单选择:1
进入菜单选择:1
所有灯都打开 灯光设置:1111 1111 1111 1111
我不确定为什么会在这种情况下发生...谢谢!
更新:感谢您的回答。我通过重写我的 while() 条件来修复代码
c - How would using scanf like gets work?
What would be the best way to imitate the functionality of gets
with scanf
?
Here is my current attempt
c - 语句 fflush(stdin) 的使用有多合适?
为了读取多字串,我一直在使用gets() 函数。该gets()
函数的行为对我来说是不可预测的,我fflush(stdin)
在每个gets()
语句之前使用该语句以避免出现问题。以这种方式使用这个语句合适吗?有什么替代方法?
ruby - 输入字符串与数值范围不匹配
下面的 ruby 代码没有按预期工作。它似乎无法识别1..3
范围,只是读取else
条件。如果我给了一个数字而不是一个范围,它虽然有效。不知道我哪里错了。
ruby - 更改行分隔符然后将其改回时的奇怪行为
尝试从命令行读取多行输入时,我遵循了这个问题的建议:
STDIN#gets
但是,当我尝试改$/
回来时,我得到了奇怪的行为:
使用 Ruby 执行时,会产生如下输出:
(我输入到END
,其余的由程序输出,然后程序退出。)
在我改$/
回"\n"
. 所以我的问题很简单:为什么?
作为更大(但仍然很小)应用程序的一部分,我正在尝试设计一种记录笔记的方法;事实上,这种奇怪的行为可能具有破坏性,因为如果我无法重置行分隔符,我的程序的其余部分将无法正常运行。我已经尝试过使用双引号和单引号的各种方式,但这似乎不是问题。有任何想法吗?
ruby - Ruby -- 'gets' 添加换行符
我写了这个:
结果是这样的:
为什么变量后字符串的其余部分在另一行继续?我想要它
"Hello Moemen. Pleased to meet you."
是我错过了什么吗?我正在使用 sublime text 2,但我无法获得
gets
让我输入数据的方法;它只是在控制台中打印结果,而没有给我输入任何内容的机会。任何想法?
c - 是否可以在不知道 c 中数组长度的情况下使用gets?
如果我们想在 c 中使用gets,我们将执行以下操作:
我们必须先知道 str 的长度(即 100),然后使用gets。是否可以在不知道 c 中数组长度的情况下使用gets?
ruby - 从终端运行文件时如何使用获取?
我正在尝试从命令行执行该程序,但我无法使用gets.chomp
,而是返回键值。
我正在输入:ruby name_of_file.rb name_of_file.txt
我知道程序没有完全执行凯撒密码,我只是想弄清楚如何从命令行运行它而不必使用 pry 或 irb。
c - 为什么首先要成为 C 标准的一部分?
gets
每个 C 程序员都知道,除非标准输入连接到受信任的源,否则无法安全使用。但是为什么 C 语言的开发者在它成为 C 标准的正式部分之前没有注意到如此明显的错误呢?为什么直到 C11 才从标准中删除它并用执行边界检查的函数替换它?我知道fgets
通常使用它来代替它,但这有一个令人讨厌的习惯,即\n
在末尾保留。