#pragma once #include #include #define PRINTF_LIKE(n, m) __attribute__((format(printf, n, m))) int printf(const char* fmt, ...) PRINTF_LIKE(1, 2); // Outputs to serial. int sprintf(char* __s, const char* fmt, ...) PRINTF_LIKE(2, 3); int snprintf(char* __s, size_t max, const char* fmt, ...) PRINTF_LIKE(3, 4); int vprintf(const char* fmt, va_list ap); int vsprintf(char* __s, const char* fmt, va_list ap); int vsnprintf(char* __s, size_t max, const char* fmt, va_list ap); int kprintf(const char* fmt, ...) PRINTF_LIKE(1, 2); // Outputs to text console. int vkprintf(const char* fmt, va_list ap);