在 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中文网其他相关文章!