1

在 Stroustrup 的著作 Programming with C++ page 102 中,他使用a后跟 acin来阅读,用于将厘米转换为英寸。doublechar

他使用的代码:

cin >> length >> unit;

例如,如果用户输入 2.54c。

怎么cin知道把 2.54 放进去length,把 c 放进去unit?我认为如果多次阅读必须有空格或按下回车键?

我知道这cin::getline更安全,但我想了解为什么cin知道如何doublechar.

谢谢。

4

1 回答 1

5

转换尽可能地进行,然后停止。

您可以通过使用strtod和跟踪“结束”指针来自己手动尝试,以确定您消耗了多少字符串。下一次提取在该点继续。

于 2013-07-04T21:31:20.847 回答