X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=includes%2Fstring.h;h=00309f520910d0a0601fe79181d109164d1eae3f;hb=f7a440b9c7bb0c686dc2368c4ff53b20bf6371f8;hp=c63bab8dff7ba01b66eae343329542b4f330115c;hpb=a0ae3ba6bb30efbbb64425898343987f07dceb2d;p=pdclib.old diff --git a/includes/string.h b/includes/string.h index c63bab8..00309f5 100644 --- a/includes/string.h +++ b/includes/string.h @@ -1,8 +1,6 @@ /* $Id$ */ -/* Release $Name$ */ - -/* String handling +/* 7.21 String handling This file is part of the Public Domain C Library (PDCLib). Permission is granted to use, modify, and / or redistribute at will. @@ -10,25 +8,18 @@ #ifndef _PDCLIB_STRING_H #define _PDCLIB_STRING_H _PDCLIB_STRING_H - -#ifndef _PDCLIB_AUX_H -#define _PDCLIB_AUX_H _PDCLIB_AUX_H -#include <_PDCLIB_aux.h> -#endif - -#ifndef _PDCLIB_INT_H -#define _PDCLIB_INT_H _PDCLIB_INT_H #include <_PDCLIB_int.h> -#endif - -#if _PDCLIB_HOSTED == 1 -#warning As of the current release, PDCLib is not a conforming hosted environment. -#warning is not standard-compliant (yet) - strerror is missing. -#endif +_PDCLIB_BEGIN_EXTERN_C +#ifndef _PDCLIB_SIZE_T_DEFINED +#define _PDCLIB_SIZE_T_DEFINED _PDCLIB_SIZE_T_DEFINED typedef _PDCLIB_size_t size_t; +#endif +#ifndef _PDCLIB_NULL_DEFINED +#define _PDCLIB_NULL_DEFINED _PDCLIB_NULL_DEFINED #define NULL _PDCLIB_NULL +#endif /* String function conventions */ @@ -186,12 +177,17 @@ void * memset( void * s, int c, size_t n ); /* Map an error number to a (locale-specific) error message string. Error numbers are typically errno values, but any number is mapped to a message. TODO: PDCLib does not yet support locales. - TODO: strerror() not yet implemented. -char * strerror( int errnum ); */ +char * strerror( int errnum ); /* Returns the length of the string s (excluding terminating '\0'). */ size_t strlen( const char * s ); +#if _PDCLIB_POSIX_MIN(2008098L) || _PDCLIB_XOPEN_MIN(0) +char * strdup( const char* src ); +char * strndup( const char* src, size_t n ); +#endif + +_PDCLIB_END_EXTERN_C #endif