考虑一下我写的这个函数,它可以快速找到字符串中给定字符的最后一次出现,并返回它在物理上是字符串的字符数组中的位置:
size_t strlstchar(const char *str, const char ch)
{
char *chptr = strrchr(str, ch);
return chptr - str;
}
我只是在这里快速输入(尚未编译或尚未编译),只是因为我对一些事情有疑问。
对我来说,这似乎是查找哪个数组元素包含特定字符的最后一个实例的最简单的解决方案,但我不知道它是如何工作的。我只是按照 strrchr 的文档制作的,所以从技术上讲,它是 strrchr 完成所有工作。我只是无法想象这是实现这一目标的最佳方式(就性能而言),并希望有人可以就什么是实现这一目标的最佳方式提供一些意见。
strrchr 是一种有效的方法吗?还是 strrchr 最好留作其他用途?