Конструирование строки определенной длины, начинающейся с определенного префикса

Мне нужно построить строку определенной длины, начинающуюся с определенного префикса. Есть ли более быстрый способ (с точки зрения производительности) достичь цели следующего фрагмента кода? Поможет ли использование здесь char*?

int strLen = 15;
string prefix = "1234"; // could be a number of any length less than strLen
int prefixLen = prefix.length();
string str = prefix;
for(int i=0;i<strLen-prefixLen;i++)
{
    str.append("9"); // use character '9' as filler
}
printf("str: %s \n", str.c_str());

Пример префикса и вывода:

prefix: 123, str:  123999999999999
prefix: 1234, str: 123499999999999

Единственное, что я не хочу менять в этом коде - это тип 'prefix', который должен оставаться string.

0
задан Meysam 19 October 2011 в 07:50
поделиться