我收到以下形式的输入:
(8,7,15)
(0,0,1) (0,3,2) (0,6,3)
(1,0,4) (1,1,5)
(2,1,6) (2,2,7) (2,5,8)
(3,0,9) (3,3,10) (3,4,11) (3,5,12)
(4,1,13) (4,4,14)
(7,6,15)
我必须记住三元组的数量。我编写了一个快速测试程序来尝试读取输入cin
,然后拆分字符串以从输入中获取数字。该程序似乎没有读取所有行,它在之后停止并在之后随机(1,1,5)
打印7
我为我尝试为我的作业创建的功能之一创建了这个快速测试功能:
int main ()
{
string line;
char * parse;
while (getline(cin, line)) {
char * writable = new char[line.size() + 1];
copy (line.begin(), line.end(), writable);
parse = strtok (writable," (,)");
while (parse != NULL)
{
cout << parse << endl;
parse = strtok (NULL," (,)");
cout << parse << endl;
parse = strtok (NULL," (,)");
cout << parse << endl;
parse = strtok (NULL," (,)");
}
}
return 0;
}
有人可以帮我修复我的代码或给我一个工作示例吗?