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 char *s,
00033 char c,
00035 int Len
00036 );
00037
00038 #ifndef MAC
00044 LgiFunc char *strnstr
00045 (
00047 char *a,
00049 char *b,
00051 int n
00052 );
00053 #endif
00054
00060 LgiFunc char *strnistr
00061 (
00063 char *a,
00065 char *b,
00067 int n
00068 );
00074
00075
00076 LgiFunc char *stristr
00077 (
00079 char *a,
00081 char *b
00082 );
00083
00084
00085
00086 LgiFunc char *strnistr(char *a, char *b, int n);
00087 #ifndef WIN32
00088 LgiFunc int strnicmp(char *a, char *b, int i);
00089 #endif
00090
00091
00097 LgiFunc char *strsafecpy
00098 (
00100 char *dst,
00102 char *src,
00104 int len
00105 );
00111 LgiFunc char *strsafecat
00112 (
00114 char *dst,
00116 char *src,
00118 int len
00119 );
00124 LgiFunc int htoi
00125 (
00127 char *a
00128 );
00133 LgiFunc int64 htoi64
00134 (
00136 char *a
00137 );
00142 LgiFunc char *TrimStr(char *s, char *Delim = " \r\n\t");
00144 LgiFunc bool ValidStr(char *s);
00146 LgiFunc char *NewStr
00147 (
00149 char *s,
00151 int Len = -1
00152 );
00154 LgiFunc bool MatchStr
00155 (
00157 char *Template,
00159 char *Data
00160 );
00161
00163 LgiFunc char16 *StrchrW(char16 *s, char16 c);
00165 LgiFunc char16 *StrrchrW(char16 *s, char16 c);
00167 LgiFunc char16 *StrnchrW(char16 *s, char16 c, int Len);
00168
00170 LgiFunc char16 *StrstrW(char16 *a, char16 *b);
00172 LgiFunc char16 *StristrW(char16 *a, char16 *b);
00174 LgiFunc char16 *StrnstrW(char16 *a, char16 *b, int n);
00176 LgiFunc char16 *StrnistrW(char16 *a, char16 *b, int n);
00177
00179 LgiFunc int StrcmpW(char16 *a, char16 *b);
00181 LgiFunc int StricmpW(char16 *a, char16 *b);
00183 LgiFunc int StrncmpW(char16 *a, char16 *b, int n);
00185 LgiFunc int StrnicmpW(char16 *a, char16 *b, int n);
00186
00188 LgiFunc char16 *StrcpyW(char16 *a, char16 *b);
00190 LgiFunc char16 *StrncpyW(char16 *a, char16 *b, int n);
00191
00193 LgiFunc int StrlenW(char16 *a);
00195 LgiFunc void StrcatW(char16 *a, char16 *b);
00197 LgiFunc int HtoiW(char16 *a);
00199 LgiFunc int64 HtoiW64(char16 *a);
00201 LgiFunc char16 *NewStrW
00202 (
00204 char16 *s,
00206 int Len = -1
00207 );
00209 LgiFunc char16 *TrimStrW(char16 *s, char16 *Delim = 0);
00211 LgiFunc bool ValidStrW(char16 *s);
00213 LgiFunc bool MatchStrW(char16 *Template, char16 *Data);
00214
00215 #endif