diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2009-06-13 16:54:04 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2009-06-13 16:54:04 +0000 |
| commit | 6d9ccee95dd99fecda3a6ba62c2768b4d39f69e5 (patch) | |
| tree | ed06c372126df9d843b7d72c0263982923e1ccba /src/base | |
| parent | c2f8d0e07ac19d4a876444d045a4f199f4d7c4d7 (diff) | |
| download | zcatch-6d9ccee95dd99fecda3a6ba62c2768b4d39f69e5.tar.gz zcatch-6d9ccee95dd99fecda3a6ba62c2768b4d39f69e5.zip | |
base for the localization system
Diffstat (limited to 'src/base')
| -rw-r--r-- | src/base/system.c | 26 | ||||
| -rw-r--r-- | src/base/system.h | 35 |
2 files changed, 61 insertions, 0 deletions
diff --git a/src/base/system.c b/src/base/system.c index c94e4cf9..067c870f 100644 --- a/src/base/system.c +++ b/src/base/system.c @@ -1097,6 +1097,12 @@ int str_comp_nocase(const char *a, const char *b) #endif } +int str_comp(const char *a, const char *b) +{ + return strcmp(a, b); +} + + const char *str_find_nocase(const char *haystack, const char *needle) { while(*haystack) /* native implementation */ @@ -1116,6 +1122,26 @@ const char *str_find_nocase(const char *haystack, const char *needle) return 0; } + +const char *str_find(const char *haystack, const char *needle) +{ + while(*haystack) /* native implementation */ + { + const char *a = haystack; + const char *b = needle; + while(*a && *b && *a == *b) + { + a++; + b++; + } + if(!(*b)) + return haystack; + haystack++; + } + + return 0; +} + void str_hex(char *dst, int dst_size, const void *data, int data_size) { static const char hex[] = "0123456789ABCDEF"; diff --git a/src/base/system.h b/src/base/system.h index 87cae4a0..6ead7239 100644 --- a/src/base/system.h +++ b/src/base/system.h @@ -763,6 +763,25 @@ void str_sanitize(char *str); */ int str_comp_nocase(const char *a, const char *b); + +/* + Function: str_comp_nocase + Compares to strings case sensitive. + + Parameters: + a - String to compare. + b - String to compare. + + Returns: + <0 - String a is lesser then string b + 0 - String a is equal to string b + >0 - String a is greater then string b + + Remarks: + - The strings are treated as zero-termineted strings. +*/ +int str_comp(const char *a, const char *b); + /* Function: str_find_nocase Finds a string inside another string case insensitive. @@ -781,6 +800,22 @@ int str_comp_nocase(const char *a, const char *b); */ const char *str_find_nocase(const char *haystack, const char *needle); +/* + Function: str_find + Finds a string inside another string case sensitive. + + Parameters: + haystack - String to search in + needle - String to search for + + Returns: + A pointer into haystack where the needle was found. + Returns NULL of needle could not be found. + + Remarks: + - The strings are treated as zero-termineted strings. +*/ +const char *str_find(const char *haystack, const char *needle); /* Function: str_hex |