在C语言中,String.indexOf
函数并不存在。String
类型和indexOf
函数是Java中的概念。在C语言中,字符串通常是以字符数组或字符指针表示的。要在C语言中查找一个字符串中的子字符串,可以使用strstr
函数。
strstr
函数是C语言标准库string.h
中的一个函数,它的原型如下:
char *strstr(const char *haystack, const char *needle);
haystack
是要搜索的字符串,needle
是要搜索的子字符串。如果在haystack
中找到needle
,strstr
函数将返回一个指向haystack
中needle
第一次出现的位置的指针。如果needle
未在haystack
中出现,则返回NULL
。
以下是一个使用strstr
函数的示例:
#include<stdio.h>
#include<string.h>
int main() {
char haystack[] = "This is a sample string.";
char needle[] = "sample";
char *result;
result = strstr(haystack, needle);
if (result != NULL) {
printf("Found '%s' in '%s'\n", needle, haystack);
printf("'%s' starts at position %ld\n", needle, (unsigned long)(result - haystack));
} else {
printf("'%s' not found in '%s'\n", needle, haystack);
}
return 0;
}
输出:
Found 'sample' in 'This is a sample string.'
'sample' starts at position 10
在这个示例中,strstr
函数在haystack
中找到了needle
,并返回了一个指向haystack
中needle
第一次出现的位置的指针。
领取专属 10元无门槛券
手把手带您无忧上云