std::memchr
Defined in header <cstring> | ||
---|---|---|
const void* memchr( const void* ptr, int ch, std::size_t count ); | ||
void* memchr( void* ptr, int ch, std::size_t count ); |
Converts ch
to unsigned char
and locates the first occurrence of that value in the initial count
characters (each interpreted as unsigned char
) of the object pointed to by ptr
.
This function behaves as if it reads the characters sequentially and stops as soon as a matching character is found: if the array pointed to by | (since C++17) |
Parameters
ptr | - | pointer to the object to be examined |
ch | - | character to search for |
count | - | max number of characters to examine |
Return value
Pointer to the location of the character, or NULL
if no such character is found.
Example
Search an array of characters.
#include <iostream> #include <cstring> int main() { char arr[] = {'a','\0','a','A','a','a','A','a'}; char *pc = (char*)std::memchr(arr,'A',sizeof arr); if (pc != NULL) std::cout << "search character found\n"; else std::cout << "search character not found\n"; }
Output:
search character found
See also
finds the first occurrence of a character (function) |
|
(C++11) | finds the first element satisfying specific criteria (function template) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/string/byte/memchr