📄 xstrcmp.c
字号:
/*
** xstrcmp() - compares strings using DOS wildcards
** 'mask' may contain '*' and '?'
** returns 1 if 's' matches 'mask', otherwise 0
** public domain by Steffen Offermann 1991
*/
int xstrcmp (char *mask, char *s)
{
while (*mask)
{
switch (*mask)
{
case '?':
if (!*s)
return (0);
s++;
mask++;
break;
case '*':
while (*mask == '*')
mask++;
if (!*mask)
return ( 1 );
if (*mask == '?')
break;
while (*s != *mask)
{
if (!*s)
return (0);
s++;
}
s++;
mask++;
break;
default:
if (*s != *mask)
return (0);
s++;
mask++;
}
}
if (!*s && *mask)
return (0);
return ( 1 );
}
#ifdef TEST
#include <stdio.h>
void main(int argc, char *argv[])
{
if (3 != argc)
{
puts("Usage: XSTRCMP string_1 string_2");
return;
}
printf("xstrcmp(\"%s\", \"%s\") returned %d\n", argv[1], argv[2],
xstrcmp(argv[1], argv[2]));
}
#endif /* TEST */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -