From 102341d7ae8793c29d44fa416d3b5b797d1eca3e Mon Sep 17 00:00:00 2001 From: Clay Smith Date: Tue, 1 Aug 2023 01:09:09 -0500 Subject: First commit --- printf_vs_snprintf_plus_write.c | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 printf_vs_snprintf_plus_write.c (limited to 'printf_vs_snprintf_plus_write.c') diff --git a/printf_vs_snprintf_plus_write.c b/printf_vs_snprintf_plus_write.c new file mode 100644 index 0000000..0527079 --- /dev/null +++ b/printf_vs_snprintf_plus_write.c @@ -0,0 +1,29 @@ +#include +#include +#include + +#define NUM 1234567890 +#define BUFSIZE 25 + +int main(void) +{ + int pid = fork(); + char buffer[BUFSIZE + 1]; + time_t time_taken; + + if (pid == 0) { //slightly slower result + for (int i = 0; i < NUM; ++i) { + printf("Child: %d\n", i); + } + time_taken = time(&time_taken); + } else { //slightly faster result + for (int i = 0; i < NUM; ++i) { + snprintf(buffer, BUFSIZE, "Parent: %d\n", i); + write(1, buffer, BUFSIZE); + } + time_taken = time(&time_taken); + } + + fprintf(stderr, "time taken: %zu", time_taken); + return 0; +} -- cgit v1.2.1