It will make no difference which one you chose if you're using a modern compiler[1]. Take for example the following C code.
#include <stdlib.h>
#include <stdio.h>
void foo(void) {
putchar('\n');
}
void bar(void) {
printf("\n");
}
When compiled with gcc -O1 (optimizations enabled), we get the following (identical) machine code in both foo and bar:
movl $10, %edi
popq %rbp
jmp _putchar ## TAILCALL
Both foo and bar end up calling putchar('\n'). In other words, modern C compilers are smart enough to optimize printf calls very efficiently. Just use whichever one you think is more clear and readable.
- I do not consider MS's
cl to be a modern compiler.