在C 中檢查前綴字串是否存在並將子字串轉換為整數
使用者尋求有關實作Python 字串前綴檢查和子字串轉換的指導在C 。具體來說,他們的目標是實現Python的startswith()方法和子字串轉換為整數的功能。
檢查前綴字串是否存在
檢查C字串是否開始使用特定前綴,利用搜尋位置為零的 rfind() 方法。例如:
<code class="cpp">std::string s = "tititoto"; if (s.rfind("titi", 0) == 0) { // s starts with "titi" }</code>
透過將搜尋位置設為零,rfind() 方法僅檢查字串的開頭。這樣可以實現高效、準確的前綴匹配。
將子字串轉換為整數
要將子字串轉換為整數,請使用stoi() 函數:
<code class="cpp">if (s.rfind("--foo=", 0) == 0) { int foo_value = std::stoi(s.substr(strlen("--foo="))); }</code>
此程式碼檢查“--foo=”前綴,如果找到,則從其末尾開始提取子字串(在“=”字元之後)並使用stoi() 將其轉換為整數。
更新:Boost 整合
使用者表示不願意使用 Boost。但是,如果需要,他們可以免費使用它。 Boost 提供了額外的字串操作功能,包括其 Spirit 函式庫中的starts_with() 和 stoi() 功能。
以上是如何在 C 中複製 Python 的startswith() 和子字串到整數功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!