创建迭代字符串

时间:2011-05-12 10:01:30

标签: c++ string

是否有更好/更快的方法来创建从字符串(const char *)和number(int)创建的字符串(std或(const)char *),如

animation0,animation1,animation2 ... animation99

比这个?

注意:不必使用std,因为hasValueForKey接受const char *

std::stringstream strIter("animation0"); 

int i = 0;
while (hasValueForKey(strIter.str().c_str())) {

    // do some stuff

    ++i;
    strIter.str(std::string());
    strIter << "animation" << i;            
}

感谢

1 个答案:

答案 0 :(得分:1)

你可以使用C99 APIsnprintf(char *str, size_t size, const char *format, ...);

int i = 0;
char str[50];
while (hasValueForKey(str)) {
    // do some stuff
    ++i;
    snprintf(str, 50, "animation%d", i);
}