Turbo C 的“cin”限制:仅读取第一个单词
在 Turbo C 中,“cin”输入运算符有一个处理字符数组时的限制。具体来说,它只会读取直到遇到空白字符(例如空格或换行符)。当尝试读取多字输入时,这可能会导致意外行为。
考虑以下 Turbo C 代码:
<code class="c++">#include <iostream.h> class String { char str[100]; public: void input() { cout << "Enter string: "; cin >> str; } void display() { cout << str; } }; int main() { String s; s.input(); s.display(); }</code>
如果您运行此代码并输入输入“Steve Hawking, “您会期望输出显示整个字符串。但是,由于“cin”的限制,仅显示“Steve”,因为“cin”在第一个空白字符(空格)处停止读取。
克服限制
要解决此限制,您可以使用替代方法在 Turbo C 中读取字符数组:
推荐
现在推荐的方法是使用现代 C 编译器和标准库。这提供了更可靠、更高效的输入处理,包括读取整行输入的能力。
以上是为什么 Turbo C 的'cin”只读取第一个字?的详细内容。更多信息请关注PHP中文网其他相关文章!