matos/core/klibc.h

48 lines
1.4 KiB
C
Raw Normal View History

2018-07-20 15:41:58 +02:00
#pragma once
#include "stdarg.h"
2018-07-20 15:41:58 +02:00
2018-11-22 17:41:18 +01:00
#define islower(c) (('a' <= (c)) && ((c) <= 'z'))
#define isupper(c) (('A' <= (c)) && ((c) <= 'Z'))
#define isdigit(c) (('0' <= (c)) && ((c) <= '9'))
#define isspace(c) (((c) == ' ') || ((c) == '\t') || \
((c) == '\f') || ((c) == '\n') || \
((c) == '\r') || ((c) == '\v'))
#define isprint(c) ((' ' <= (c)) && ((c) <= '~'))
2019-04-15 23:19:14 +02:00
int memcmp(const void *s1, const void *s2, size_t n);
2018-11-16 10:34:03 +01:00
void *memcpy(void *dest, const void *src, size_t n);
2018-08-09 22:19:34 +02:00
void *memset(void *s, int c, size_t n);
2018-11-16 10:34:03 +01:00
char *itoa(int value, char *str, int base);
2018-11-20 17:03:57 +01:00
void reverse(char s[]);
2020-04-23 00:49:09 +02:00
int strlen(const char s[]);
unsigned int strnlen(const char * s, size_t count);
int strcmp(const char s1[], const char s2[]);
char *strzcpy(char *dst, const char *src, int len);
void puts(const char *str);
void putc(const char str);
void printInt(int integer);
void vprintf(const char *format, va_list ap);
void printf(const char *format, ...);
/*
* Dummy printk for disabled debugging statements to use whilst maintaining
* gcc's format checking.
*/
#define no_printf(fmt, ...) \
({ \
if (0) \
printf(fmt, ##__VA_ARGS__); \
0; \
})
#ifdef DEBUG
#define pr_devel(fmt, ...) \
printf(pr_fmt(fmt), ##__VA_ARGS__)
#else
#define pr_devel(fmt, ...) \
no_printf(pr_fmt(fmt), ##__VA_ARGS__)
#endif
#define pr_info(fmt, ...) \
printf(pr_fmt(fmt), ##__VA_ARGS__)