第1个回答 推荐于2018-06-28
可以通过函数的定义来区别:
1.strstr:
[cpp] view plaincopy
char *strstr(const char *haystack, const char *needle)
可见,strstr函数搜索的是一个const char*型的数据,即字符串常量.
2.strchr:
[cpp] view plaincopy
char *strchr(const char *str, int c)
而strchr搜索的是一个int型的数据,即字符.
3.strrchr
[cpp] view plaincopy
char *strrchr(const char *str, int c)
另外,strrchr返回字符c在字符串str中最后出现的位置.本回答被网友采纳
第2个回答 2011-12-17
strchr 功能:查找字符串s中首次出现字符c的位置 说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。
strstr 函数搜索一个字符串在另一个字符串中的第一次出现。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
<?php
echo strstr("Hello world!","world");
?>
输出:
world!
第3个回答 2018-06-28
strstr() 和strchr() 是完全一致的两个函数,它们都是从第一次出现的位置往后显示结果
strrchr()函数就不一样了,是从最后一次出现的位置往后显示结果
如:
$a = "a@abc@cde";
strstr($a,'@'); 和 strchr($a,'@');
结果也是:@abc@cde
strstr($a,'@',true); 和 strchr($a,'@',true);
结果也是:a
而 strrchr($a,'@');
结果是:@cde