文字列内の特定の文字の最後の出現を見つけて、物理的に文字列である文字の配列内の位置を返すために、私が書いたこの関数を考えてみてください。
size_t strlstchar(const char *str, const char ch)
{
char *chptr = strrchr(str, ch);
return chptr - str;
}
いくつかのことについて質問があるという理由だけで、ここにこれをすばやく入力しました(まだコンパイルも何もしていません)。
私には、これは特定の文字の最後のインスタンスを保持する配列要素を見つけるための最も簡単な解決策のように思えますが、それがどのように機能するかわかりません。strrchr のドキュメントに従ってこれを作成したので、技術的には strrchr がすべての作業を行っています。これが(パフォーマンスの観点から)これを達成するための最良の方法であるとは想像できません.
strrchr はこれを行う効率的な方法ですか? それとも、strrchr を他の用途に使用するのが最善でしょうか?