#ifndef STRING_H
#define STRING_H

#include <stddef.h>
#include <stdint.h>

// Работа с памятью
void* memset(void* dest, int val, size_t count);
void* memcpy(void* dest, const void* src, size_t count);
void* memmove(void* dest, const void* src, size_t count);
int memcmp(const void* s1, const void* s2, size_t count);

// Работа со строками
size_t strlen(const char* str);
char* strcpy(char* dest, const char* src);
char* strcat(char* dest, const char* src);
int strcmp(const char* s1, const char* s2);

// Перевод строки в число
int atoi(const char* str);

// Перевод числа в строку (десятичную)
char* itoa(int value, char* str, int base);

// Специальный быстрый аналог для Hex (16-ричной системы), незаменим для дампов памяти
char* itox(uint32_t value, char* str);

#endif
