Simple C ++ - 关于字符串和连接以及将int转换为字符串

时间:2012-04-19 16:27:17

标签: c++ string visual-studio

  

可能重复:
  Easiest way to convert int to string in C++

我对Visual C ++字符串有疑问。我想连接下一个字符串。

for (int i=0; i<23; i++)
{
    imagelist.push_back("C:/x/left"+i+".bmp");
    imagelist.push_back("C:/x/right"+i+".bmp");
}

THX

3 个答案:

答案 0 :(得分:2)

std::ostringstream os;
os << "C:/x/left" << i << ".bmp";
imagelist.push_back(os.str());

答案 1 :(得分:2)

一种解决方案是使用stringstreams:

#include<sstream>

for (int i=0; i<23; i++)
{
    stringstream left, right;
    left << "C:/x/left" << i << ".bmp";
    right << "C:/x/left" << i << ".bmp";
    imagelist.push_back(left.str());
    imagelist.push_back(right.str());
}

stringstream不是速度更快的性能解决方案,但易于理解且非常灵活。

另一个选择是使用itoasprintf,如果您有c风格打印的感觉。但是,我听说itoa不是很便携的功能。

答案 2 :(得分:2)

for (int i=0; i<23; i++)
{
    imagelist.push_back("C:/x/left"+std::to_string(i)+".bmp");
    imagelist.push_back("C:/x/right"+std::to_string(i)+".bmp");
}