Массив символов, оканчивающийся '\0' - это и есть стринг. Размер стринга возвращается всеми функциями семейcтва sprintf(). И вопрос всё таки касался C, а не C++.
snprintf() в качестве одного из параметров принимает размер буфера.
asprintf() сама выделяет столько памяти, сколько нужно.
Откуда взяться переполнению?
> std::string NumberToString(int value ){
> std::ostringstream ostrm;
> ostrm << value;
> return ostrm.str();
> }
немного офтопа, но все написано до нас - boost::lexical_cast
а есть какая-нить функция перевода числа в строку, например,
3578 -> "three thousand five hundred and seventy eight"?
я написал свою, но она не универсальная:-(
>5.goto 1.
Извините, что вмешиваюсь, но goto, видимо, не совсем то, что имелось ввиду? Может #include ? :) А то так до скончания веков компилить придётся. :)