我正在尝试在一行上插入多个输入,逗号和输入之间有空格。到目前为止我一直使用的方法将输入与空格分开。
int a, b , c ,d
cin >> a >> b >> c >> d ;
使用此方法,输入行如下所示:
1 2 3 4
但我希望能够输入这样的数据:
1, 2, 3, 4
答案 0 :(得分:3)
>>
的分隔符不可修改,但您可以将其与ignore
结合使用:
std::cin >> a;
std::cin.ignore(1, ',')
// rinse and repeat
答案 1 :(得分:1)
你可以这样做:
int main() {
int a,b,c,d;
char comma;
std::cin >> a >> comma >> b >> comma >> c >> comma >> d;
std::cout << a << " " << b << " " << c << " " << d << std::endl;
return 0;
}
输入:
1, 2, 3, 4
输出:
1 2 3 4
答案 2 :(得分:0)
在C / C ++中,您只需要这样做:
scanf("%d, %d, %d, %d", &a, &b, &c, &d);
您只需要添加<cstdio>
答案 3 :(得分:0)
你可以这样继续-
for (int i = 0; i < 6; i++)
{
/* code */
for (int j = 0; j < 6; j++)
{
/* code */
cin >> arr[i][j];
cin.ignore(1, ' ');
}
cout << endl;
}
这将需要一个 6*6 的数组输入
-9 -9 -9 1 1 1
0 -9 0 4 3 2
-9 -9 -9 1 2 3
0 0 8 6 6 0
0 0 0 -2 0 0
0 0 1 2 4 0