#include <stdio.h>
#include <assert.h>
int find_string(char strings[4][20],const char *src)
{
/*对一个字符串的定位,第2个字符串那么就得到1*/char a;
const char *str=&a;
const char *d=NULL;
int pos=0;
assert((strings!=NULL)&&(src!=NULL));
while((str=*strings++)!=NULL)
{
d=src;
while(*str!=’\0′)
{
if(*str==*d)
{
str++;
d++;
}
break;/*退出while*/
}
if(*str!=’\0′)
{
pos++;/*说明不是最后一个字符进入下一个字符串进行比较*/
}
else
{
printf(“%s\n”,strings[pos]);
return pos;
}
}
}
int main(void)
{
char strings[4][20]={“wufeng”,”zhoude”,”wuixia”,NULL};
const char *src=”wuxia”;
int pos;
pos=find_string(strings,src);
printf(“pos=%d\n”,pos);
getch();
exit(0);
}
得到的结果是pos=3,错在哪里
>> 本文固定链接: http://www.vcgood.com/archives/3172
>> 转载请注明: diantouxiao 2009年04月30日 于 C语言帝国 发表