|
回复 #2000 zxw 的帖子
这个SUBSTRING函数没有多大用处。
相当于strcmp的功能。只是多了一个case_insensitive是否忽略大小写
substring(const char *s1, const char *s2, int case_insensitive)
要比较字符串,可以使用我重新写的函数strncmpx,为了节省代码空间,基本上把所有的字符串比较功能都集中在一起了。
/* strncmpx 增强型字符串比较函数 by chenall 2011-12-13
int strncmpx(const char *s1,const char *s2, unsigned long n, int case_insensitive)
比较两个字符串s1,s2.长度: n,
如果n等于0,则只比较到字符串结束位置。否则比较指定长度n.不管字符串是否结束。
如果case_insensitive非0,比较字母时不区分大小写。
可以替换strcmp/memcmp等字符串比较函数
返回值: s1-s2
当s1<s2时,返回值<0
当s1=s2时,返回值=0
当s1>s2时,返回值>0
*/
用这个函数就可以实现包括目前的substring函数。
strcmp/stricmp
strncmp/strnicmp
memcmp/memicmp
strncmpx 的功能号是 76
n=0时和substring效果一样。
n=0 case_insensitive=0 時就是strcmp
case_insensitive=0 並且n>0時就是strncmp
case_insensitive 非0 n 也是非0 就是strnicmp
....
[ 本帖最后由 chenall 于 2011-12-13 22:54 编辑 ] |
|