The string utilities are a collection of data structures and standalone functions used to manipulate and parse null terminated character strings.
The following conditional directives are used to define non-portable string routines that need to be ported between UNIX and WIN32 platforms.
__DOS__ - Directive used for all DOS compilers
__UNIX__ - Directive used for all UNIX compilers
__WIN32__ - Directive used for all WIN32 compilers
const int MAXWORDLENGTH = 255; // Maximum word length const int MAXWORDS = 255; // Maximum number of words
String concatenation routines:
char *StringCat(const char *s1=" ", const char *s2= " ", const char *s3=" ") - Standalone function used to append up to three strings onto the end of each other. Returns a null-terminated string representing "s2" and "s3" concatenated onto the end of "s1." The calling function is responsible for freeing the memory allocated for the composite string returned by this functions.
int parse(char *string, char words[MAXWORDS][MAXWORDLENGTH], int *numwords, char sepchar) - The global integer constants MAXWORDS and MAXWORDLENGTH define the maximum number of words and the maximum word length that will be parsed. Both are equal to 255. The number of words parsed is passed back in the "numwords" variable and the actual words parsed from the line of text are passed back in the "words" array.
Case insensitive string compare functions:
int CaseICmp(const char *s1, const char *s2) - Standalone function used to perform a case insensitive string compare. Returns -1 if "s1" is less then "s2", 0 if "s1" equals "s2" and 1 if "s1" is greater then "s2."
String searching functions:
unsigned FindMatch(const char *str, const char *p, unsigned offset = 0) - Finds pattern "p" in string "s" starting a specified offset. Returns index of first occurrence of matching the pattern or -1 if no match is found.
unsigned IFindMatch(const char *str, const char *p, unsigned offset = 0)- Finds pattern "p" in string "s" starting a specified offset using a case insensitive compare. Returns index of first occurrence of matching the pattern or -1 if no match is found.
End Of Document