libkernaux/examples/printf.c

30 lines
584 B
C
Raw Normal View History

2020-12-06 22:24:43 +00:00
#include <kernaux/printf.h>
#include <assert.h>
#include <stdio.h>
2020-12-06 22:24:43 +00:00
#include <stdlib.h>
#include <string.h>
#define BUFFER_SIZE 1024
static char buffer[BUFFER_SIZE];
static unsigned int buffer_index;
static void my_putchar(const char chr)
{
if (buffer_index >= BUFFER_SIZE) abort();
buffer[buffer_index++] = chr;
}
int main()
{
memset(buffer, '\0', sizeof(buffer));
buffer_index = 0;
2020-12-07 00:07:19 +00:00
kernaux_printf(my_putchar, "Hello, %s! Session id: %u.", "Alex", 123);
assert(strcmp(buffer, "Hello, Alex! Session id: 123.") == 0);
2020-12-06 22:24:43 +00:00
printf("OK!\n");
2020-12-06 22:24:43 +00:00
return 0;
}