В разделе "Статьи" можно найти обучающие статьи по информационным технологиям, а также узнать о новостях сервиса Quizful.
←
→
←
→
|
ссылка
May 17 19:13
Комментарий от elirijndael: Полностью согласен с valid_name. |
|
ссылка
May 17 18:47
Комментарий от Aleksandr89: Неплохой тест. Для тех кто хочет ещё попрактиковатьс... |
|
ссылка
May 17 15:13
Комментарий от dpdpdp: Поменяйте радиокнопки на чекбоксы. Во втором варианте про... |
|
ссылка
May 17 11:55
Комментарий от Torredo812: вот это подвох!!! забываешь что х увеличился))и думае... |
|
ссылка
May 17 10:50
Комментарий от lesha1980: Хороший вопрос. Получается, что проверяется только x в... |
Тестов: 130, вопросов: 5791. Пройдено: 126748 / 526541.
sprintf(char* buf,format,int chislo); используется для преобразования целого числа в удобочитаемое строковое представление(можно сказать-является аналогом char *itoa(value,string,radix), которая возвращает указатель на преобразованную строку).
Положительные стороны: работа без динамического выделения памяти, возвращает количество записанных-преобразованных символов, удобно использовать, если преобразованные данные необходимо использовать несколько раз.
Недостатки: скорость действия, в некоторых случаях переполнение буфера, как вариант можно найти альтернативную замену:
1) snprintf(buf,buflen,format,chislo); (небольшой "+" наличие длины буфера-buflen);
2) как вариант можно использовать std::strstream следующим образом("-" достаточно громоздко):
ostrstream temp(buf,buflen);
temp<<setw(int)<<chislo<<ends;
//setw-для форматного вывода программы, например setw(4)...
3) lexical_cast - предназначен для конвертирования данных из 1-го типа в другой(больше всего нравится по удобству):
string& s;
int i;
s = lexical_cast<string>(i);
Маленький вывод: у каждого метода есть свои недостатки(быстродействие, удобство, семантика, рациональное-нерациональное использование памяти...) и свои плюсы, поэтому использование того или иного метода зависит только от Вашего выбора. Необходимо лишь отметить, что лучше все же искать альтернативу (замену sprintf) и использовать данную функцию реже (так как любое нерационально использование данных может привести к переполнению буфера, а неверно указанный формат приведет к ошибке - поиск которой может затянуться на неопределенный промежуток времени).