CRT 9.0 vsprintf_s Проверка параметров в длинной строке формата - PullRequest
2 голосов
/ 20 декабря 2010

С здесь :

Версии этих функций с суффиксами _s и _p являются более безопасными версиями.Эти версии проверяют строки формата и создают исключение, если строка формата сформирована неправильно (например, если используются недопустимые символы форматирования).

Я только что обнаружил, что строка формата считается не оченьформируется, если он больше размера выходного буфера.Кто-нибудь знает документацию, которая подтверждает это для всех функций печати * _s?

Спасибо

1 Ответ

1 голос
/ 20 декабря 2010

Похоже, что по умолчанию выдается ошибка CRT, если размер выходного буфера превышен, независимо от источника. Я ожидал, что вывод будет тихо урезан, если размер выходного буфера будет превышен. Таким образом, нет смысла пытаться заполнить строку формата, если она уже слишком длинная.

...