C 中的 strstr() 函數在指定字串中搜尋子字串,傳回子字串中第一個字元的位置或 NULL。函數使用 KMP 演算法,先對子字串進行預處理,提高搜尋效率。
C 中strstr() 函數用法
##定義與文法
strstr() 函數用於在一個字串中尋找另一個子字串的首次出現位置。其語法如下:<code class="cpp">char *strstr(const char *str, const char *substr);</code>其中:
:要搜尋的字串。
:要尋找的子字串。
傳回值
如果找到子字串,strstr() 函數傳回包含子字串第一個字元的字串指針,否則傳回NULL。
用法說明
strstr() 函數使用 KMP 演算法(Knuth-Morris-Pratt 演算法)進行字串比對。它先對子字串進行預處理,然後掃描字串,從而提高了搜尋效率。範例用法
以下程式碼範例示範如何使用strstr() 函數:<code class="cpp">#include <iostream> #include <cstring> using namespace std; int main() { char str[] = "Hello, world!"; char substr[] = "world"; char *result = strstr(str, substr); if (result) { cout << "Substring '" << substr << "' found at position " << (result - str) << endl; } else { cout << "Substring not found" << endl; } return 0; }</code>輸出:
<code>Substring 'world' found at position 7</code>
#注意事項
。
以上是c++中strstr函數用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!