std::strstr(3)
πΈ NAME πΈ
okay so this is the std::strstr(3) page from the C++ Standard Libary manual β yes bestie, Libary with the typo is exactly how it appears, and I'm keeping it π. The name is literally std::strstr, and the NAME line says std::strstr β std::strstr. Love that for us π
.
β¨ Synopsis β¨
Defined in header <cstring>.
const char* strstr( const char* haystack, const char* needle );
char* strstr( char* haystack, const char* needle );
So what does it do? It finds the first occurrence of the byte string needle in the byte string pointed to by haystack. The terminating null characters are not compared. That's the whole vibe: search, find, return, periodt π.
π Parameters π
haystackβ pointer to the null-terminated byte string to examine. That's the string being searched, bestie.needleβ pointer to the null-terminated byte string to search for. That's the pattern you're hunting for π.
π₯ Return value π₯
Pointer to the first character of the found substring in haystack, or a null pointer if no such character is found. And if needle points to an empty string, haystack is returned. No cap, that's the rule π
.
π§ Example π§
// Run this code
#include <cstring>
#include <iostream>
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)))
{
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.'
π See also π
findβ finds the first occurrence of the given substring (public member function ofstd::basic_string<CharT,Traits,Allocator>).wcsstrβ finds the first occurrence of a wide string within another wide string (function).strchrβ finds the first occurrence of a character (function).strrchrβ finds the last occurrence of a character (function).- C documentation for
strstr.
mwah π that's the whole page, bestie β source/version: http://cppreference.com, date: 2024.06.10 π«Άβ¨
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms