帮助理解一下代码?
Sylix 2002-09-17 11:24:07 static char *days[] =
{ "su", "mo", "tu", "we", "th", "fr", "sa", "wk", "any", "al" };
#ifdef DEBUG
# define xprintf if (1) printf
#else
# define xprintf if (0) printf
#endif
static int strcode (char **str)
{
int i, l;
xprintf("strcode %s called\n", *str);
for (i = 0; i < 10; i++) {
l = strlen(days[i]);
if (l > strlen(*str))
continue;
if (strncmp(*str, days[i], l) == 0) {
*str += l;
break;
}
}
xprintf("strcode result %d\n", i);
return (i >= 10) ? -1 : i;
}
//哪位高人能够解释一下代码?