#include<iostream> using namespace std; int f(char *s,char *t){ int i,j,k; for(i=0;s[i];i++){ for(j=i,k=0;s[j]&&s[j]==t[k]&&t[k];j++,k++); if(t[k]=='\0')return i; }return -1; } int main(){ char sl[100]="abcecefg",*s2="cef"; cout<<f(sl,s2)<<'\n'; return 0; } 以上代码什么意思
时间: 2023-06-26 22:05:41 浏览: 26
C++程序中main(int argc, char *argv[])函数的参数意义
这段代码是一个简单的字符串匹配算法,用于查找字符串s中是否包含字符串t,并返回t在s中第一次出现的位置。具体来说:
1. 函数f接受两个参数,分别是指向字符串s和t的指针。
2. 函数中使用两个循环来查找t在s中的位置。
3. 外层循环遍历字符串s中的每个字符,内层循环则用来判断s中当前位置开始是否与t相同。
4. 如果t在s中出现,则返回t在s中第一次出现的位置;否则返回-1。
5. 在主函数中,定义了一个字符串sl和一个字符指针s2,分别表示要查找的字符串和目标字符串。
6. 调用函数f,并输出返回值,即t在s中第一次出现的位置。
阅读全文