为什么自定义的printf函数存在换行呢 ?
程序代码:
#define DEFAULT_BUFFER_LEN 1024 int debug_print(char *fmt, ...) { int cnt = 0; #ifdef _DEBUG va_list argptr; char buffer[DEFAULT_BUFFER_LEN]; if (fmt == NULL) return -1; va_start(argptr, fmt); cnt = vsprintf(buffer, fmt, argptr); puts(buffer); va_end(argptr); #endif return(cnt); } int main() { debug_print("zhong");debug_print("yun");debug_print("de"); return 0; }以上定义的函数为什么输出是
这里多余的换行处理在哪里引入呢 ?