3 #include "eBatRuntime.h"
5 int bat_strtol(
char *
string) {
11 while (
string[i] ==
' ' &&
string[i] !=
'\0') {
16 if (
string[i] ==
'-' ||
string[i] ==
'+') {
17 sign = (
string[i] ==
'-' ? -1 : 1);
22 while (isdigit(
string[i]) &&
string[i] !=
'\0') {
23 number = number * 10 + (
string[i] -
'0');
29 void bat_trim(
char*
string){
30 int start = 0, end =
strlen(
string) - 1;
31 while (
string[start] ==
' ' ||
string[start] ==
'\t' ||
string[start] ==
'\n' ||
string[start] == 0xD){
34 while (
string[end] ==
' ' ||
string[end] ==
'\t' ||
string[end] ==
'\n' ||
string[end] == 0xD){
37 for (
int i = 0; i <= end - start; i++){
38 string[i] =
string[i + start];
40 string[end - start + 1] =
'\0';
43 void bat_str_debug(
char*
string){
45 bat_debug(
" |--- String debug: '%s'\n",
string);
47 for (
int i = 0; i < len; i++){
48 bat_debug(
" |--- [%d | %d] [0x%x] '%c'\n", i+1, len,
string[i],
string[i]);
52 char* bat_strdup(
const char *str) {
62 char *copy = (
char*)malloc(len + 1);
74 char* bat_toLower(
char* str) {
76 for (i = 0; str[i] !=
'\0'; i++) {
77 if (str[i] >=
'A' && str[i] <=
'Z') {
84 char* bat_toUpper(
char *str) {
86 for (i = 0; str[i] !=
'\0'; i++) {
87 if (str[i] >=
'a' && str[i] <=
'z') {
size_t strlen(const char *str)
Возращает длину строки
void * memset(void *ptr, char value, size_t num)
Заполнение массива указанными символами
int strcpy(char *dest, const char *src)
Копирование строк