【发布时间】:2015-09-25 01:57:46
【问题描述】:
所以基本上我正在尝试阅读该行:
Darth_Vader 100 100 60 40
每件事都必须进入自己的变量。一切正常,除了最后应该保持值 40 的变量没有这样做,而是值为 -858993460。
以下是相关代码:
void Jedi::inputData(istream& inputStream)
{
string nameText, maxHPText, currHPText, atkBonusText, defBonusText;
inputStream >> nameText >> maxHPText >> currHPText >> atkBonusText >> defBonusText;
Jedi::setName(nameText);
Jedi::setMaxHealth(stoi(maxHPText));
Jedi::setCurrHealth(stoi(currHPText));
Jedi::setAttackBonus(stoi(atkBonusText));
Jedi::setDefenseBonus(stoi(defBonusText));
}
如何让 inputStream 忽略新行,抓取 40,然后在下次调用该函数时转到下一行?
【问题讨论】:
-
你试过使用
getline()吗? -
是的,我有。我什至尝试接受最后一条数据作为新行分隔,但这对我也不起作用。
-
请详细说明,我们需要有关问题的更多详细信息。也可以尝试发布更多代码。
-
我提供的链接中的说明是否不清楚?
标签: c++ newline space delimited