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:
阅读(1409) | 评论(0) | 转发(0) |