2

这里

这些带有 _s 和 _p 后缀的函数的版本是更安全的版本。这些版本验证格式字符串,如果格式字符串格式不正确(例如,如果使用了无效的格式字符),则会生成异常。

我刚刚发现如果格式字符串大于输出缓冲区大小,则认为格式字符串格式不正确。有谁知道确认所有 *_s 打印功能的文档?

谢谢

4

1 回答 1

1

看起来默认行为是在超出输出缓冲区大小时抛出 CRT 错误,无论来源如何。如果超出输出缓冲区大小,我希望输出会被静默截断。因此,如果格式字符串已经太长,则尝试填充格式字符串是没有意义的。

于 2010-12-20T17:47:37.060 回答