制作 RPG 并希望以铂金、金、银和铜为代表的货币。不幸的是,我的教授希望将货币存储为字符串(即字符串类,而不是 cStrings)。例如 -- 0.1.23.15 将是 0 铂、1 金、23 银和 15 铜。
我只想知道如何实现这一点的大想法。例如——我可以使用strtok(即我相信这只适用于cStrings)或其他一些C++函数来完成这个吗?
制作 RPG 并希望以铂金、金、银和铜为代表的货币。不幸的是,我的教授希望将货币存储为字符串(即字符串类,而不是 cStrings)。例如 -- 0.1.23.15 将是 0 铂、1 金、23 银和 15 铜。
我只想知道如何实现这一点的大想法。例如——我可以使用strtok(即我相信这只适用于cStrings)或其他一些C++函数来完成这个吗?
这是一个解决方案:
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
int main()
{
string str="0.1.23.15",temp;
stringstream s(str);
vector<int> v;
while(getline(s,temp,'.'))
{
v.push_back(stoi(temp));
}
for(int i: v) cout << i << endl;//C++11 style
//for(int i=0; i<v.size(); i++) cout << v[i] << endl; //Old school :D
system("pause");
return 0;
}