Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2120870
  • 博文数量: 374
  • 博客积分: 7276
  • 博客等级: 少将
  • 技术积分: 5668
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-06 16:35
文章分类

全部博文(374)

文章存档

2013年(23)

2012年(153)

2011年(198)

分类: LINUX

2012-03-23 16:35:54

memchr
const void * memchr ( const void * ptr, int value, size_t num ); void * memchr ( void * ptr, int value, size_t num );
Locate character in block of memory
Searches within the first num bytes of the block of memory pointed by ptr for the first occurrence of value (interpreted as an unsigned char), and returns a pointer to it.

Parameters ptrPointer to the block of memory where the search is performed.valueValue to be located. The value is passed as an int, but the function performs a byte per byte search using the unsigned char conversion of this value.numNumber of bytes to be analyzed.
Return Value A pointer to the first occurrence of value in the block of memory pointed by ptr.
If the value is not found, the function returns NULL.

Portability In C, this function is declared as:

void * memchr ( const void *, int, size_t );
instead of the two overloaded versions provided in C++.

Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* memchr example */ #include #include int main () { char * pch; char str[] = "Example string"; pch = (char*) memchr (str, 'p', strlen(str)); if (pch!=NULL) printf ("'p' found at position %d.\n", pch-str+1); else printf ("'p' not found.\n"); return 0; }


Output:
'p' found at position 5.
阅读(1359) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~