00001
00002
00003 #ifndef GSTRING_H
00004 #define GSTRING_H
00005
00006 #include "LgiInc.h"
00007 #include "LgiDefs.h"
00008
00010
00011
00012
00013 LgiExtern char WhiteSpace[];
00014
00015
00016 #ifndef ToUpper
00017 #define ToUpper(c) ((c) >= 'a' && (c) <= 'z' ? (c)-'a'+'A' : (c))
00018 #endif
00019 #ifndef ToLower
00020 #define ToLower(c) ((c) >= 'A' && (c) <= 'Z' ? (c)-'A'+'a' : (c))
00021 #endif
00022
00023
00024
00025
00026
00028 LgiFunc char *strnchr
00029 (
00031 const char *s,
00033 char c,
00035 int Len
00036 );
00037
00038 #ifndef MAC
00044 LgiFunc char *strnstr
00045 (
00047 char *a,
00049 const char *b,
00051 int n
00052 );
00053 #endif
00054
00060 LgiFunc char *strnistr
00061 (
00063 char *a,
00065 const char *b,
00067 int n
00068 );
00074
00075
00076 LgiFunc char *stristr
00077 (
00079 const char *a,
00081 const char *b
00082 );
00083
00084
00085
00086 #ifndef WIN32
00087 LgiFunc int strnicmp(const char *a, const char *b, int i);
00088 #endif
00089
00090
00096 LgiFunc char *strsafecpy
00097 (
00099 char *dst,
00101 const char *src,
00103 int len
00104 );
00110 LgiFunc char *strsafecat
00111 (
00113 char *dst,
00115 const char *src,
00117 int len
00118 );
00123 LgiFunc int htoi
00124 (
00126 const char *a
00127 );
00132 LgiFunc int64 htoi64
00133 (
00135 char *a
00136 );
00141 LgiFunc char *TrimStr(const char *s, const char *Delim = " \r\n\t");
00143 LgiFunc bool ValidStr(const char *s);
00145 LgiFunc char *NewStr
00146 (
00148 const char *s,
00150 int Len = -1
00151 );
00153 LgiFunc bool MatchStr
00154 (
00156 const char *Template,
00158 const char *Data
00159 );
00160
00162 LgiFunc char16 *StrchrW(const char16 *s, char16 c);
00164 LgiFunc char16 *StrrchrW(char16 *s, char16 c);
00166 LgiFunc char16 *StrnchrW(char16 *s, char16 c, int Len);
00167
00169 LgiFunc char16 *StrstrW(char16 *a, const char16 *b);
00171 LgiFunc char16 *StristrW(char16 *a, const char16 *b);
00173 LgiFunc char16 *StrnstrW(char16 *a, const char16 *b, int n);
00175 LgiFunc char16 *StrnistrW(char16 *a, const char16 *b, int n);
00176
00178 LgiFunc int StrcmpW(const char16 *a, const char16 *b);
00180 LgiFunc int StricmpW(const char16 *a, const char16 *b);
00182 LgiFunc int StrncmpW(const char16 *a, const char16 *b, int n);
00184 LgiFunc int StrnicmpW(const char16 *a, const char16 *b, int n);
00185
00187 LgiFunc char16 *StrcpyW(char16 *a, const char16 *b);
00189 LgiFunc char16 *StrncpyW(char16 *a, const char16 *b, int n);
00190
00192 LgiFunc int StrlenW(const char16 *a);
00194 LgiFunc void StrcatW(char16 *a, const char16 *b);
00196 LgiFunc int AtoiW(const char16 *a);
00198 LgiFunc int HtoiW(const char16 *a);
00200 LgiFunc int64 HtoiW64(const char16 *a);
00202 LgiFunc char16 *NewStrW
00203 (
00205 const char16 *s,
00207 int Len = -1
00208 );
00210 LgiFunc char16 *TrimStrW(const char16 *s, const char16 *Delim = 0);
00212 LgiFunc bool ValidStrW(const char16 *s);
00214 LgiFunc bool MatchStrW(const char16 *Template, const char16 *Data);
00215
00216 #endif