Defined in header <string.h> | ||
|---|---|---|
char *strstr( const char *str, const char *substr ); | (1) | |
/*QChar*/ *strstr( /*QChar*/ *str, const char *substr ); | (2) | (since C23) |
substr in the null-terminated byte string pointed to by str. The terminating null characters are not compared.T be an unqualified character object type. str is of type const T*, the return type is const char*. str is of type T*, the return type is char*. (strstr) or a function pointer is used), the actual function declaration (1) becomes visible.The behavior is undefined if either str or substr is not a pointer to a null-terminated byte string.
| str | - | pointer to the null-terminated byte string to examine |
| substr | - | pointer to the null-terminated byte string to search for |
Pointer to the first character of the found substring in str, or a null pointer if such substring is not found. If substr points to an empty string, str is returned.
#include <string.h>
#include <stdio.h>
void find_str(char const *str, char const *substr)
{
char *pos = strstr(str, substr);
pos ? printf("found the string '%s' in '%s' at position %td\n",
substr, str, pos - str)
: printf("the string '%s' was not found in '%s'\n",
substr, str);
}
int main(void)
{
char *str = "one two three";
find_str(str, "two");
find_str(str, "");
find_str(str, "nine");
find_str(str, "n");
return 0;
}Output:
found the string 'two' in 'one two three' at position 4 found the string '' in 'one two three' at position 0 the string 'nine' was not found in 'one two three' found the string 'n' in 'one two three' at position 1
| finds the first occurrence of a character (function) |
|
| finds the last occurrence of a character (function) |
|
C++ documentation for strstr |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/string/byte/strstr