An application (e.g., a computer program) prints data by invoking a print
function with a format argument and, optionally, at least one data
argument. The format argument and any data arguments are saved in a
deferred trace data buffer. The print function returns to the application
then, sometime after the print function has returned, the deferred trace
data buffer is processed and the format argument and/or any data
arguments are printed. By saving the format argument and any data
argument(s) to a memory buffer instead of parsing and formatting the
arguments in real-time, program efficiency may be improved and the impact
of the print function on a software test scenario may be reduced.