c语言strrstr
更新时间:2023-06-21背景
在C语言中,字符串(String)是一个由字符组成的数组,以\0(空字符)结尾。为了能够方便地在字符串中查找指定的子字符串,C语言中提供了一个内置函数strrstr()。
功能
strrstr()函数用于在一个字符串中查找另一个字符串最后一次出现的位置。它返回一个指向被查找子字符串最后一次出现的位置的指针,或者返回NULL表示没找到。
用法
strrstr()函数的声明如下:
char *strrstr(const char *haystack, const char *needle);
其中,haystack是被查找的字符串,needle是要查找的子字符串。函数返回的指针指向needle在haystack中最后出现的位置,或者返回NULL。
实例
下面是一个简单的例子,演示如何使用strrstr()函数:
#include <stdio.h>
#include <string.h>
int main() {
const char *haystack = "This is a sample string";
const char *needle = "sample";
char *result = strrstr(haystack, needle);
if (result != NULL) {
printf("'%s' found at position %d\n", needle, (int)(result - haystack));
} else {
printf("'%s' not found\n", needle);
}
return 0;
}
在上面的例子中,我们在字符串haystack中查找子字符串needle,并打印其最后一次出现的位置。如果找到子字符串,将输出它在字符串haystack中的位置;如果没找到,将输出"Not found"。
总结
strrstr()函数是C语言中用于在字符串中查找子字符串最后一次出现位置的函数。它非常方便,可以在大量的字符串处理任务中使用。要注意使用时传递正确的参数,以及对返回值进行合理的判断和处理。