使用矢量控制显示输出
Control display output using vector
矢量大小:2
矢量数据:Carol Mary
if(vector.size() >=2)
{
cout<<vector.size();
for(int i=1;i<vector.size()-2;i++)
{
cout<<" AND ";
}
}
输出显示:Carol AND Mary AND
我该怎么把它改成"卡罗尔和玛丽"?
当我的矢量大小为3时,
我该怎么把它改成Carol AND Mary AND Peter
提前感谢!
让我们假设向量命名为v.
if(!v.empty()) {
cout << v[0];
for(int i = 1; i<v.size(); ++i) {
cout << " AND " << v[i];
}
}
我会使用我的infix_ostream_iterator
:
std::copy(vec.begin(), vec.end(),
infix_ostream_iterator<std::string>(std::cout, " AND "));
infix_ostream_iterator
代码在CodeReview.SE.上
只是添加我喜欢的方式:
const char *sep = "";
for (size_t i=0; i<vec.size(); ++i, sep=" AND ")
cout << sep << vec[i];
cout << endl;
或者,更短:
cout << join(vec, " AND ") << endl;
也就是说,使用boost::algorithm::join()的工作方式与Python(" AND ".join(vec)
)类似。
std::vector<std::string> vec {"Carol","Marry","Peter"};
int i=1;
std::cout<<vec[0];
for(;i<vec.size();++i)
std::cout<<" AND "<<vec[i];
相关文章:
- 为什么在C的循环中使用printf的Rust代码不显示输出,而在C++的循环中显示std::cout
- C++ 构造函数未显示输出
- 显示C++输出而不返回值
- 为什么输出窗口上没有显示输出?
- 为什么我的代码块上没有显示输出?
- C++ 程序不显示输出
- isPalindrome不显示输出,isPalindrome函数未使用字符串输入作为字符串参数进行测试
- 如何从amd gpus的显示输出中获取图像数据
- 插入了 C++ 数组字符串数据,但在显示输出时不显示
- 程序不会在必须时结束并显示输出
- 为什么我的前缀中缀代码不显示输出
- 函数显示输出和输入时出现问题
- 为什么我的程序多次显示输出
- 二进制搜索 - 代码编译并运行后不显示输出
- 字符串流未显示输出
- 为什么当我使用 cout 显示输出时,必须将按位运算符(例如 &,|,等)括在括号中?
- 这段代码可编译,但在visualstudio2015社区中运行(c++)时不显示输出
- Jupyter笔记本未显示C 输出(COUT)
- 尝试拆分循环链表.显示输出但崩溃.在 IDEone 中显示运行时错误
- Q未显示输出