550W Document
550W, a high-end OS
string.c 文件参考
#include <lib/string.h>
string.c 的引用(Include)关系图:

宏定义

#define SS   (sizeof(size_t))
 
#define ALIGN   (sizeof(size_t) - 1)
 
#define ONES   ((size_t)-1 / UCHAR_MAX)
 
#define HIGHS   (ONES * (UCHAR_MAX / 2 + 1))
 
#define HASZERO(x)   (((x)-ONES) & ~(x)&HIGHS)
 
#define ULONG_MAX   ((unsigned long)(~0L)) /* 0xFFFFFFFF */
 
#define LONG_MAX   ((long)(ULONG_MAX >> 1)) /* 0x7FFFFFFF */
 
#define LONG_MIN   ((long)(~LONG_MAX)) /* 0x80000000 */
 

函数

int k_isspace (int c)
 
int k_isdigit (int c)
 
int k_isalpha (int x)
 
int k_isupper (int x)
 
long k_atol (const char *str)
 
int k_atoi (const char *s)
 
void k_memcpy (uint8_t *dest, const uint8_t *src, uint32_t len)
 
void k_memset (void *dest, uint8_t val, uint32_t len)
 
void k_bzero (void *dest, uint32_t len)
 
int k_strcmp (const char *str1, const char *str2)
 
int k_strncmp (const char *_l, const char *_r, size_t n)
 
char * k_strcpy (char *dest, const char *src)
 
char * k_strncpy (char *restrict d, const char *s, size_t n)
 
char * k_strcat (char *dest, const char *src)
 
int k_strlen (const char *src)
 
void * memchr (const void *src, int c, size_t n)
 
size_t k_strnlen (const char *s, size_t n)
 
int k_strlistlen (char *src[])
 
char * k_strtok (char *substr, char *str, const char delim, int length)
 
long k_strtol (const char *nptr, char **endptr, register int base)
 

宏定义说明

◆ ALIGN

#define ALIGN   (sizeof(size_t) - 1)

◆ HASZERO

#define HASZERO (   x)    (((x)-ONES) & ~(x)&HIGHS)

◆ HIGHS

#define HIGHS   (ONES * (UCHAR_MAX / 2 + 1))

◆ LONG_MAX

#define LONG_MAX   ((long)(ULONG_MAX >> 1)) /* 0x7FFFFFFF */

◆ LONG_MIN

#define LONG_MIN   ((long)(~LONG_MAX)) /* 0x80000000 */

◆ ONES

#define ONES   ((size_t)-1 / UCHAR_MAX)

◆ SS

#define SS   (sizeof(size_t))

◆ ULONG_MAX

#define ULONG_MAX   ((unsigned long)(~0L)) /* 0xFFFFFFFF */

函数说明

◆ k_atoi()

int k_atoi ( const char *  s)

◆ k_atol()

long k_atol ( const char *  str)

◆ k_bzero()

void k_bzero ( void *  dest,
uint32_t  len 
)

◆ k_isalpha()

int k_isalpha ( int  x)

◆ k_isdigit()

int k_isdigit ( int  c)

◆ k_isspace()

int k_isspace ( int  c)

◆ k_isupper()

int k_isupper ( int  x)

◆ k_memcpy()

void k_memcpy ( uint8_t *  dest,
const uint8_t *  src,
uint32_t  len 
)

◆ k_memset()

void k_memset ( void *  dest,
uint8_t  val,
uint32_t  len 
)

◆ k_strcat()

char* k_strcat ( char *  dest,
const char *  src 
)

◆ k_strcmp()

int k_strcmp ( const char *  str1,
const char *  str2 
)

◆ k_strcpy()

char* k_strcpy ( char *  dest,
const char *  src 
)

◆ k_strlen()

int k_strlen ( const char *  src)

◆ k_strlistlen()

int k_strlistlen ( char *  src[])

◆ k_strncmp()

int k_strncmp ( const char *  _l,
const char *  _r,
size_t  n 
)

◆ k_strncpy()

char* k_strncpy ( char *restrict  d,
const char *  s,
size_t  n 
)

◆ k_strnlen()

size_t k_strnlen ( const char *  s,
size_t  n 
)

◆ k_strtok()

char* k_strtok ( char *  substr,
char *  str,
const char  delim,
int  length 
)

◆ k_strtol()

long k_strtol ( const char *  nptr,
char **  endptr,
register int  base 
)

◆ memchr()

void* memchr ( const void *  src,
int  c,
size_t  n 
)