10#define KKLIBC_STDLIB_H
15unsigned long long __udivdi3(
unsigned long long a,
unsigned long long b);
17unsigned long long __umoddi3(
unsigned long long a,
unsigned long long b);
37void itoa(
int num,
char* str,
int base);
45void utoa(
u32 num,
char* str,
int base);
91void strcpy(
char* dest,
char* src);
100char*
strncpy(
char* dest,
const char* src,
unsigned int n);
108int strcmp(
char s1[],
char s2[]);
117int strncmp(
const char* s1,
const char* s2,
unsigned int n);
124void append(
char s[],
char n);
133char*
strncat(
char* dest,
const char* src,
unsigned int n);
153char*
strchr(
const char* s,
int c);
161char*
strstr(
const char* haystack,
const char* needle);
194char*
strtok(
char* src_str,
char* delim);
202unsigned int is_delim(
char c,
char* delim);
215void*
memcpy(
void* dest,
const void* src,
unsigned int n);
232void*
memset(
void* s,
int c,
unsigned int n);
257void*
memmove(
void* dest,
const void* src,
u32 n);
266int memcmp(
const void* ptr1,
const void* ptr2,
u32 n);
275void*
memchr(
const void* ptr,
int c,
u32 n);
308int sprintf(
char* buf,
const char* fmt, ...);
320int snprintf(
char* buf,
unsigned int size,
const char* fmt, ...);
unsigned int u32
Definition ctypes.h:11
unsigned char u8
Definition ctypes.h:15
u32 size
Definition mem.h:0
char * va_list
Definition stdio.h:13
unsigned long long __umoddi3(unsigned long long a, unsigned long long b)
Definition stdlib.c:18
void * memcpy(void *dest, const void *src, unsigned int n)
Копирует блок памяти из src в dest.
Definition stdlib.c:247
int strncmp(const char *s1, const char *s2, unsigned int n)
Сравнивает первые n символов двух строк.
Definition stdlib.c:483
unsigned int vsnprintf(char *buf, unsigned int size, const char *fmt, va_list args)
Записывает форматированную строку в буфер с ограничением размера для va_list.
Definition stdlib.c:531
void memory_set(u8 *dest, u8 val, u32 len)
Заполняет блок памяти указанным байт-значением.
Definition stdlib.c:263
u32 rand_range(u32 *state, u32 min, u32 max)
Генерирует псевдослучайное число в заданном диапазоне.
Definition stdlib.c:208
void * memchr(const void *ptr, int c, u32 n)
Ищет первое вхождение символа в блоке памяти.
Definition stdlib.c:645
char * strncat(char *dest, const char *src, unsigned int n)
Объединяет не более n символов строки src к концу строки dest.
Definition stdlib.c:472
void append(char s[], char n)
Объединяет строку src к концу строки dest.
Definition stdlib.c:381
void memory_copy(u8 *source, u8 *dest, int nbytes)
Копирует n байт из source в dest. (Альтернатива memcpy)
Definition stdlib.c:256
void int_to_ascii(int n, char str[])
(legacy, используйте itoa) Преобразует целое число в строку ASCII.
Definition stdlib.c:280
int snprintf(char *buf, unsigned int size, const char *fmt,...)
Записывает форматированную строку в буфер с ограничением размера.
Definition stdlib.c:545
u32 strspn(const u8 *str1, const u8 *str2)
Вычисляет длину начального сегмента строки str1, состоящего только из символов строки str2.
Definition stdlib.c:553
char * strtok(char *src_str, char *delim)
Разбивает строку на токены по разделителю.
Definition stdlib.c:416
void * memset(void *s, int c, unsigned int n)
Заполняет блок памяти указанным значением.
Definition stdlib.c:238
u32 strcspn(const u8 *str1, const u8 *str2)
Вычисляет длину начального сегмента строки str1, который не содержит ни одного символа из строки str2...
Definition stdlib.c:577
u32 rand(u32 *state)
Генерирует псевдослучайное число используя линейный конгруэнтный метод.
Definition stdlib.c:216
char * strncpy(char *dest, const char *src, unsigned int n)
Копирует до n символов из строки src в dest.
Definition stdlib.c:460
int hex_strtoint(char *str)
Преобразует строку, представляющую шестнадцатеричное число, в целое число.
Definition stdlib.c:346
int memcmp(const void *ptr1, const void *ptr2, u32 n)
Сравнивает два блока памяти.
Definition stdlib.c:632
void reverse(char s[])
Разворачивает строку на месте.
Definition stdlib.c:363
int strtoint(char *str)
Преобразует строку, представляющую число, в целое число со знаком.
Definition stdlib.c:298
unsigned int is_delim(char c, char *delim)
Проверяет, является ли символ разделителем.
Definition stdlib.c:405
unsigned long long __udivdi3(unsigned long long a, unsigned long long b)
Definition stdlib.c:14
char * strstr(const char *haystack, const char *needle)
Ищет первое вхождение подстроки needle в строке haystack.
Definition stdlib.c:511
void u32memory_set(u32 *dest, u32 val, u32 len)
Заполняет блок памяти указанным 32-битным значением.
Definition stdlib.c:270
void reboot()
Перезагружает систему.
Definition stdlib.c:221
int sprintf(char *buf, const char *fmt,...)
Записывает форматированную строку в буфер.
Definition stdlib.c:536
int strlen(char s[])
Вычисляет длину строки.
Definition stdlib.c:373
int strcmp(char s1[], char s2[])
Сравнивает две строки.
Definition stdlib.c:395
void backspace(char s[])
Удаляет последний символ из строки (симуляция backspace).
Definition stdlib.c:387
void itoa(int num, char *str, int base)
Преобразует целое число со знаком в строку в указанной системе счисления.
Definition stdlib.c:106
void booltochar(u8 value, u8 *str)
Конвертирует булеву переменную в строку "true" или "false".
Definition stdlib.c:98
char * strchr(const char *s, int c)
Ищет первое вхождение символа в строке.
Definition stdlib.c:497
void hex_to_ascii(int n, char str[])
(legacy, используйте itoa) Преобразует целое число в шестнадцатеричную строку ASCII.
Definition stdlib.c:310
void utoa(u32 num, char *str, int base)
Преобразует целое число без знака в строку в указанной системе счисления.
Definition stdlib.c:146
u8 * strpbrk(const u8 *str1, const u8 *str2)
Ищет в строке str1 первый символ, который совпадает с любым символом из строки str2.
Definition stdlib.c:596
void * memmove(void *dest, const void *src, u32 n)
Перемещает блок памяти из src в dest. Области могут перекрываться.
Definition stdlib.c:612
void strcpy(char *dest, char *src)
Копирует строку из src в dest.
Definition stdlib.c:339
void wait(int ms)
Приостанавливает выполнение на указанное количество миллисекунд.
Definition stdlib.c:227