os-workshop

same materials and sample source for RV32 OS projects
git clone http://frotz.net/git/os-workshop.git
Log | Files | Refs

string.h (1793B)


      1 /*
      2  * Copyright (c) 2008 Travis Geiselbrecht
      3  *
      4  * Use of this source code is governed by a MIT-style
      5  * license that can be found in the LICENSE file or at
      6  * https://opensource.org/licenses/MIT
      7  */
      8 #pragma once
      9 
     10 #include <stddef.h>
     11 
     12 #define __PURE
     13 #define __CONST
     14 #define __MALLOC
     15 
     16 void *memchr (void const *, int, size_t) __PURE;
     17 int   memcmp (void const *, const void *, size_t) __PURE;
     18 void *memcpy (void *, void const *, size_t);
     19 void *memmove(void *, void const *, size_t);
     20 void *memset (void *, int, size_t);
     21 
     22 char       *strcat(char *, char const *);
     23 char       *strchr(char const *, int) __PURE;
     24 int         strcmp(char const *, char const *) __PURE;
     25 char       *strcpy(char *, char const *);
     26 char const *strerror(int) __CONST;
     27 size_t      strlen(char const *) __PURE;
     28 char       *strncat(char *, char const *, size_t);
     29 int         strncmp(char const *, char const *, size_t) __PURE;
     30 char       *strncpy(char *, char const *, size_t);
     31 char       *strpbrk(char const *, char const *) __PURE;
     32 char       *strrchr(char const *, int) __PURE;
     33 size_t      strspn(char const *, char const *) __PURE;
     34 size_t      strcspn(const char *s, const char *) __PURE;
     35 char       *strstr(char const *, char const *) __PURE;
     36 char       *strtok(char *, char const *);
     37 int         strcoll(const char *s1, const char *s2) __PURE;
     38 size_t      strxfrm(char *dest, const char *src, size_t n) __PURE;
     39 char       *strdup(const char *str) __MALLOC;
     40 
     41 /* non standard */
     42 void   bcopy(void const *, void *, size_t);
     43 void   bzero(void *, size_t);
     44 size_t strlcat(char *, char const *, size_t);
     45 size_t strlcpy(char *, char const *, size_t);
     46 int    strncasecmp(char const *, char const *, size_t)  __PURE;
     47 int    strnicmp(char const *, char const *, size_t) __PURE;
     48 size_t strnlen(char const *s, size_t count) __PURE;
     49