1 /* Strn.h */ 2 3 #ifndef _Strn_h_ 4 #define _Strn_h_ 1 5 6 /* You should define this from the Makefile. */ 7 #ifndef STRN_ZERO_PAD 8 # define STRN_ZERO_PAD 1 9 #endif 10 11 /* You should define this from the Makefile. */ 12 #ifndef STRNP_ZERO_PAD 13 # define STRNP_ZERO_PAD 0 14 #endif 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 /* Strncat.c */ 21 char *Strncat(char *const, const char *const, const size_t); 22 23 /* Strncpy.c */ 24 char *Strncpy(char *const, const char *const, const size_t); 25 26 /* Strnpcat.c */ 27 char *Strnpcat(char *const, const char *const, size_t); 28 29 /* Strnpcpy.c */ 30 char *Strnpcpy(char *const, const char *const, size_t); 31 32 /* Strntok.c */ 33 char *Strtok(char *, const char *); 34 int Strntok(char *, size_t, char *, const char *); 35 36 /* strtokc.c */ 37 char *strtokc(char *, const char *, char **); 38 int strntokc(char *, size_t, char *, const char *, char **); 39 40 /* Dynscat.c */ 41 char * Dynscat(char **dst, ...); 42 43 #ifdef __cplusplus 44 } 45 #endif 46 47 #define STRNCPY(d,s) Strncpy((d), (s), (size_t) sizeof(d)) 48 #define STRNCAT(d,s) Strncat((d), (s), (size_t) sizeof(d)) 49 50 #endif /* _Strn_h_ */ 51 52 /* eof Strn.h */ 53