今日、私は配列(この場合はポインター)内のバイトのパターンを見つけようとしています
std :: stringneedle()やhaystackなどを使用できることは知っていますが、BYTE(unsigned char)で使用できるかどうか疑問に思っていました。
BYTE * _zoneの長さも知っているので、それも問題ではありません。これを行うために私が行くことができる方法はありますか?(コード例もありがたいです:))
再度、感謝します!
std::stringは実際にはのtypedefですstd::basic_string<char>。std::basic_string<BYTE>代わりに使用できstd::string、特にほとんどの(すべて?)機能が正常に機能し.find()ます。
既存のライブラリ関数を使用したくない場合は、Knuth-Morris-Pratt、Boyer-Moore、Rabin-Karpなどのお気に入りの汎用文字列照合アルゴリズムを実装します。
のfind()メソッドは、std::string内の別の配列または文字配列std::stringを検索することを目的としたメンバー関数です。std::stringchar*
したがって、干し草の山がaであるかどうかの質問に答えるには、配列を直接findメソッドstd::stringに渡すことができるはずです。char*
干し草の山がない場合は、それを使って同じことstd::stringをすることができます。std::string