简单的 C++ - 关于字符串和连接以及将 int 转换为字符串 [重复]
Posted
技术标签:
【中文标题】简单的 C++ - 关于字符串和连接以及将 int 转换为字符串 [重复]【英文标题】:Simple C++ - about strings and concatenation and converting int to string [duplicate] 【发布时间】:2012-05-01 05:31:05 【问题描述】:可能重复: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");
谢谢
【问题讨论】:
【参考方案1】:std::ostringstream os;
os << "C:/x/left" << i << ".bmp";
imagelist.push_back(os.str());
【讨论】:
【参考方案2】:一种解决方案是使用字符串流:
#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
不是性能更快的解决方案,但易于理解且非常灵活。
另一个选择是使用itoa
和sprintf
,如果您对c 风格的打印感到宾至如归。不过听说itoa
不是很便携的功能。
【讨论】:
【参考方案3】: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");
【讨论】:
以上是关于简单的 C++ - 关于字符串和连接以及将 int 转换为字符串 [重复]的主要内容,如果未能解决你的问题,请参考以下文章