Kernighan & Pike の本The Practice of Programmingのgrep.cファイル ( https://www.cs.princeton.edu/~bwk/tpop.webpage/grep.c ) を調べていました。
^c*
何も含まないファイルで
正規表現を検索する
d
と、これらがmatch()関数に送信され、関数に ("c*", "d") が送信されmatchhereます。
matchhere('c', "\0", "d") をmatchstar送信し、("\0", "d") をmatchhere関数に送信します。これにより、メインgrep()関数に 1 が返されます
どこで値を間違って取っていますか?