现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

memchr与strchr的区别

2019-12-08 10:17 工业·编程 ⁄ 共 510字 ⁄ 字号 暂无评论

1.memchr检测的是一段内存,strchr检测的是一个字符串 如果一段内存中有0x0的话,显然不能用strchr去查找的。建议看看两个函数的原型

2.strchr会停在\0,memchr不会,看接口就明白了:

NAME

       memchr, memrchr - scan memory for a character

SYNOPSIS

       #include <string.h>

       void *memchr(const void *s, int c, size_t n);

       void *memrchr(const void *s, int c, size_t n);

NAME

       strchr, strrchr - locate character in string

SYNOPSIS

       #include <string.h>

       char *strchr(const char *s, int c);

       char *strrchr(const char *s, int c);

3.mem*系针对字节,str*系针对字符.是2个概念

4.mem  的效率高

5.类似strcpy memcpy

6.memchar针对与内存操作,shtchr只能是字符串操作

给我留言

留言无头像?