如何使用cin.在循环中忽略

how to use cin.ignore in a loop

本文关键字:循环 何使用 cin      更新时间:2023-10-16

readMe.ingredients是一个指针,指向具有重载>>操作符的Ingredient对象数组。>>操作符的分隔符是换行符。

假设成分列表的格式如下:

  • 4加仑巧克力冰淇淋
  • 3加仑奶油糖糖浆
  • 12品脱切片香蕉

for (int count = 0; count < readMe.numIngredients; count++)
    {
        in >> readMe.ingredients[count];
        // the loop continues until you finish with all of the ingredients
    }
    in.ignore(10000,'n');

这是解析上述成分列表的一些示例代码。但是,您不希望in.ignore(10000,'n') 循环内而不是在循环外以使其工作吗?如果不是,那为什么要在外面呢?

没关系,我想我明白了。成份表后面有空白行

但是,您不仍然希望in.ignore(10000,'n')在循环中以便转到下一行吗?它不会一直将4 gal chocolate ice cream分配给数组中的每个项目吗?