jjzjj

c++ - 我怎样才能改进/替换我认为是性能热点的 sprintf?

通过分析我发现这里的sprintf需要很长时间。是否有性能更好的替代方案仍然可以处理y/m/dh/m/s字段中的前导零?SYSTEMTIMEsysTime;GetLocalTime(&sysTime);charbuf[80];for(inti=0;i注意:OP在评论中解释说这是一个精简的示例。“真实”循环包含使用数据库中不同时间值的附加代码。分析已将sprintf()确定为违规者。 最佳答案 如果您正在编写自己的函数来完成这项工作,则字符串值0..61的查找表将避免对除年份以外的所有内容进行任何算术运算。编辑:请注意,为了处理闰秒(