暴力解法
int strStr(char * haystack, char * needle){
int i,j;
int n1,n2;
n1=strlen(haystack);
n2=strlen(needle);
if(n2==0)return 0;
for(i=0;i<n1;i++){
if(haystack[i]==needle[0]){
int k=i;
for(j=0;j<n2;j++){
if(haystack[k]!=needle[j])
break;
if(j==n2-1){
return i;
}
k++;
}
}
}
return -1;
}
刚开始用的sizeof()没有分析好到底是几位。
补充点:
常见的计算长度的函数有两个,sizeof()和strlen(),但是,它们之间的差别还是很大的。
sizeof():主要负责计算数组的长度;
strlen():主要负责计算字符串的长度。
(1)sizeof():数组占用字节除以数组类型所占字节,结果为数组元素个数
使用方法:sizeof(数组名)/ sizeof(数组类型名)
(2)strlen():strlen,求字符串有效长度