c++字符串数组切片
C++ string array slice
如何将输入的字符串(例如"one two three four five")分割成数组?现在我有这个:
const int SIZE = 5;
string digit[SIZE];
cout << "Enter the five here:";
for(int i = 0; i < SIZE; i++)
{
cout << i+1 << ")";
getline(cin, digit[i]);
}
,但就目前情况来看,用户每次都必须按回车键。我怎么得到它呢,当我调用上面的例子输入的digit[1]
时,我得到two
。希望这是有意义的,我想有一些函数可以帮你做这个,但如果有一个基本的方法,那可能对我最有好处,我还在学习。thx
如果您想要读取以空格分隔的单词,您可以利用从输入流中提取字符串将在空格处停止的事实:
for(int i = 0; i < SIZE; i++)
{
cout << i+1 << ")";
cin >> digit[i];
}
如果你想把所有的'five'放在一行中,你也可以这样做。然后你可以使用strtok()
将字符串分成五个字符串。参见:http://www.cplusplus.com/reference/clibrary/cstring/strtok/
您也可以使用3个参数的getline
函数。第三个是分隔符
getline(cin, digit[i], ' ');
当然,从cin
读取输入不是最好的方法。但是您可以使用这种方法来分割完整字符串,您可以从user.
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组的地址分配给变量并删除
- 从C++本机插件更新Vector3数组
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 数组索引的值没有增加
- 将对象数组的引用传递给函数
- Valarray 切片数组与 'operator*' 不匹配
- 如何在考虑对象切片的同时通过传入单个 Base 对象来打印出数组中的对象?
- 在数组中计数不同的切片
- 我应该如何将较小的std::数组构造为较大数组的切片
- 整数数组切片
- c#中的c++锯齿状数组切片
- 我可以将 std::数组转换为切片吗?或者我还能用什么
- C++中的字符切片数组(python到c ++)
- 切片C数组创建c++向量,每3个元素只保留2个元素
- 特征布尔数组切片
- c++字符串数组切片
- 如何使用SWIG让python切片与我的c++数组类一起工作
- c++中二维数组中的对象切片