Кент Рейсдорф. BORLAND C++BUILDER. Раздел 1
Кент Рейсдорф. BORLAND C++BUILDER. Страница 31
После выполнения этого фрагмента программы на экран будет выведено:
The result is: 200
В данном примере %d указывает функции sprintf(), где необходимо вставить целое число. После форматной строки в списке аргументов стоит переменная х, значение которой будет вставлено в строку на указанное место. Функция sprintf() уникальна тем, что она может иметь переменное число аргументов. Вы должны обязательно указать буфер и форматную строку, но количество аргументов после форматной строки может быть любым. Вот пример использования sprintf() с тремя дополнительными аргументами:
int х = 20; int у = 5;
sprintf(buff, "%d + %d = %d", x, у, x + y) ; cout << buff;
После выполнения этого фрагмента кода на экране будет следующий результат:
20 + 5 = 25
Одиночная наклонная черта (slash) используется в строках для представления специальных символов. Например, '\п' обозначает перевод строки, '\t' - символ табуляции. Чтобы вставить в строку саму наклонную черту, необходимо использовать двойную наклонную черту:
ffsjire^y't^
Забывая про этот факт, программисты проводили много бессонных ночей в попытках отладить программу. Это очень распространенная ошибка. Не говорите потом, что я не рассказывал вам о ней!
Функция sprintf() имеет двоюродную сестру по имени wsprintfQ, которая является Windows-версией sprintf(). Вы можете встретить в Windows-npo- граммах обе эти функции. wsprintf() функционально идентична sprintf(), с одной лишь существенной разницей: она не позволяет помещать в форматную строку числа с плавающей точкой. Вы можете использовать любую из этих функций в своих программах, но sprintf() предпочтительней, т.к. она полностью поддерживает плавающую точку (к тому же набирать нужно на один символ меньше!). Чтобы получить полное представление о возможностях sprintf(), используйте встроенную справочную систему C++Builder.