AsciiStringParsingUtils/Inc/AsciiStringParsingUtils.h

34 lines
1.1 KiB
C

//
// Created by xemon on 10.09.22.
//
#ifndef ASCIISTRINGPARSINGUTILS_ASCIISTRINGPARSINGUTILS_H
#define ASCIISTRINGPARSINGUTILS_ASCIISTRINGPARSINGUTILS_H
#include <stddef.h>
#include "stdint.h"
int64_t iAsciiStringParseSignedLongDecimalNumber(char *str, const char *strEnd);
uint64_t iAsciiStringParseUnsignedLongDecimalNumber(char *str, const char *strEnd);
double dAsciiStringParseDouble(char *str, const char *strEnd);
char *xAsciiStringSkipChar(char *str, char const *strEnd, char symbol);
#define xAsciiStringSkipSpace(STR, STR_END) xAsciiStringSkipChar(STR,STR_END,' ')
char *xAsciiStringSeekChar(char *str, char const *strEnd, char symbol);
uint8_t iAsciiStringMoveToNextParsingBlock(char **blockBeginPos, char **blockDividerPos, char *strEnd, char divider);
uint8_t iAsciiStringParseHexByte(const char *str);
size_t iAsciiStringParseHexBytes(uint8_t *bytesData, char *str, size_t stringLen);
#define BIN_FROM_HEX(DATA,LEN,HEX_STRING) \
uint8_t DATA[(sizeof(HEX_STRING)-1)/2]; \
size_t LEN = iAsciiStringParseHexBytes(DATA, HEX_STRING, sizeof(HEX_STRING) - 1);
#endif //ASCIISTRINGPARSINGUTILS_ASCIISTRINGPARSINGUTILS_H