Namespaces
Variants
Views
Actions

std::strstr

From cppreference.com
< cpp‎ | string‎ | byte
Defined in header <cstring>
const char* strstr( const char* str, const char* target );
      char* strstr(       char* str, const char* target );

Finds the first occurrence of the byte string target in the byte string pointed to by str. The terminating null characters are not compared.

Contents

[edit] Parameters

str - pointer to the null-terminated byte string to examine
target - pointer to the null-terminated byte string to search for

[edit] Return value

Pointer to the first character of the found substring in str, or a null pointer if no such character is found. If target points to an empty string, str is returned.

[edit] Example

#include <iostream>
#include <cstring>
 
int main()
{
    const char *str = "Try not. Do, or do not. There is no try.";
    const char *target = "not";
    const char *result = str;
 
    while ((result = std::strstr(result, target)) != NULL) {
        std::cout << "Found '" << target 
                  << "' starting at '" << result << "'\n";
 
        // Increment result, otherwise we'll find target at the same location
        ++result;
    }   
}

Output:

Found 'not' starting at 'not. Do, or do not. There is no try.'
Found 'not' starting at 'not. There is no try.'

[edit] See also

find characters in the string
(public member function of std::basic_string<CharT,Traits,Allocator>) [edit]
finds the first occurrence of a wide string within another wide string
(function) [edit]
finds the first occurrence of a character
(function) [edit]
finds the last occurrence of a character
(function) [edit]
C documentation for strstr