金融网站建设方法,外贸没有公司 如何做企业网站?,网站建设 域名 管理,快三免费直播app一、strstr()函数的作用
字符串函数 strstr() 是 C 语言的一个标准库函数#xff0c;它的作用是在一个字符串中查找给定字符串的第一个匹配之处#xff0c;并返回指向该字符串的指针。如果没有找到该字符串#xff0c;则返回 NULL。1
二、strstr()函数的原型和参数
strst…一、strstr()函数的作用
字符串函数 strstr() 是 C 语言的一个标准库函数它的作用是在一个字符串中查找给定字符串的第一个匹配之处并返回指向该字符串的指针。如果没有找到该字符串则返回 NULL。1
二、strstr()函数的原型和参数
strstr()函数的原型定义在头文件 string.h 中如下所示
char *strstr(const char *haystack, const char *needle);strstr()函数的参数有两个
haystack要查找的字符串必须是一个以空字符 ‘\0’ 结尾的字符数组也就是 C 语言中的字符串类型。needle要查找的子字符串也必须是一个以空字符 ‘\0’ 结尾的字符数组也就是 C 语言中的字符串类型。
三、strstr()函数的返回值
strstr()函数的返回值是一个字符指针它指向的是在字符串 haystack 中第一次出现字符串 needle 的位置。如果在字符串 haystack 中找到了字符串 needle那么返回的指针就是 haystack i其中 i 是字符串 needle 在字符串 haystack 中的索引从 0 开始计数。如果在字符串 haystack 中没有找到字符串 needle那么返回的指针就是 NULL也就是 0。
四、strstr()函数的使用示例
下面给出一个使用 strstr() 函数的简单示例它在字符串 This is a simple string 中查找字符串 simple并输出其在字符串中第一次出现的位置和之后的字符串。
#include stdio.h
#include string.hint main()
{const char *haystack This is a simple string; // 要查找的字符串const char *needle simple; // 要查找的子字符串char *ptr; // 用于接收返回的指针ptr strstr(haystack, needle); // 调用 strstr() 函数if (ptr ! NULL) // 如果找到了字符串{printf(The string %s is found at position: %ld\n, needle, ptr - haystack 1); // 输出字符串的位置printf(|%s| and the rest of the string is - |%s|\n, needle, ptr); // 输出字符串和之后的字符串}else // 如果没有找到字符串{printf(The string %s was not found in the string.\n, needle); // 输出提示信息}return 0;
}运行结果如下
The string simple is found at position: 11
|simple| and the rest of the string is - |simple string|五、strstr()函数的注意事项
在使用 strstr() 函数时需要注意以下几点
strstr() 函数可以查找字符串但不能查找单个字符。如果要查找单个字符可以使用 strchr() 函数。strstr() 函数只能查找字符串的第一个匹配不能查找所有的匹配。如果要查找所有的匹配可以使用循环或递归的方法。strstr() 函数对于大小写敏感也就是说它会区分字符串 Hello 和 hello。如果要忽略大小写可以使用 strcasestr() 函数。strstr() 函数对于多字节字符的支持不完善也就是说它只会查找多字节字符的第一个字节。如果要查找多字节字符可以使用 wcsstr() 函数。