ZHCU820Y September 2004 – June 2021
C I/O 函数的内部例程,例如 printf()、vsnprintf() 和 snprintf(),会为格式转换缓冲区保留堆栈空间。缓冲区大小由宏命令 FORMAT_CONVERSION_BUFFER 设定,而该宏命令在 format.h 中定义。在减小此缓冲区的大小之前,请考虑以下问题:
printf("%s value is %d",
some_really_long_string,
intval)
,这样不会有问题。%d item1 %f item2 %e item3
格式字符串不需要放入该缓冲区。而以 % 格式指定的每个转换项目都必须能够放入该缓冲区。