[トピック内 5 記事 (1 - 5 表示)] << 0 >>
> 悩んでいる内容を簡単に言うと、「strstrのバイナリ版みたいなのはないのか?」という事です。 stringでおk。 #include <iostream> #include <string> using namespace std; int main() { string cData("012345678\0abcde",15); // 途中に'\0'があっても(サイズ指定すりゃ)無問題 cout << "cDataは" << cData.size() << "文字です\n"; string::size_type pos = cData.find("abc"); // strstrに相当 if ( pos != string::npos ) cout << pos << "文字目に abc があります。\n"; } 実行結果: cDataは15文字です 10文字目に abc があります。
> 悩んでいる内容を簡単に言うと、「strstrのバイナリ版みたいなのはないのか?」という事です。 std::search はいかが? 目的も関数名も"どんぴしゃ"ですが。 #include <iostream> #include <algorithm> using namespace std; int main() { char cData[] = "012345678\0abcde"; const char* pat = "abc"; char* pos = search(cData, cData+15, pat, pat+3); // cDataからpatを探す if ( pos != cData+15 ) cout << pos-cData << "文字目に abc があります。\n"; }
管理者用
- Child Tree -