C99的snprintf() 提供了预测所需缓冲区大小的方法:
size = snprintf(NULL, 0, fmtstring, /* 其它参数 */ );
详情参见:http://c-faq-chn.sourceforge.net/ccfaq/node210.html
我怎样才知道对于任意的 sprintf 调用需要多大的目标缓冲区?怎样才能避免 sprintf() 目标缓冲区溢出?
2011-11-01 13:36
C99的snprintf() 提供了预测所需缓冲区大小的方法:
size = snprintf(NULL, 0, fmtstring, /* 其它参数 */ );
详情参见:http://c-faq-chn.sourceforge.net/ccfaq/node210.html
我怎样才知道对于任意的 sprintf 调用需要多大的目标缓冲区?怎样才能避免 sprintf() 目标缓冲区溢出?