> str` 只提取 C 中的第一个单词? " />
cin 仅提取 C 语言中的第一个单词
在提供的代码中,cin 使用 cin >> str; 仅捕获第一个单词,在处理包含多个单词的输入时会导致问题,这是由于 cin 在 Turbo C 中的操作方式,在遇到 >>.
解决方案:要将完整的行提取到字符数组中而不是单个单词,请将 cin 语句修改为:
或者,如果使用更现代的C 环境并使用字符串,您可以将 char 数组替换为 std::string 并利用 getline() 读取输入,如下所示:<code class="c++">cin.getline(str, sizeof str);</code>
<code class="c++">getline(cin, str);</code>其他注意事项:
强烈建议更新您的编译器,因为 Turbo C 4.5 已经明显过时,并且不支持现代 Visual Studio Express 或其他现代编译器以获得更好的兼容性。
以上是为什么 `cin >> str` 只提取 C 中的第一个单词?的详细内容。更多信息请关注PHP中文网其他相关文章!