これは、解答がパーサーを使用していなかったので、this questionの重複ではありません!Yacc/BisonパーサーとC++プログラムとのインターフェイス
私は./parser < file_to_parse
を実行して実行できるBisonパーサを持っています。私は私のC++プログラムの中からBisonパーサを呼びたいと思っています。私が望まないのはsystem(./parser < file_to_parse)
です。これは、パーサがプリコンパイルされていると仮定し、私の全プログラムがプラットフォームに依存しないと仮定するためです。私が機能している場合
は:
void foo(file_name) {
// call parser on file_name
}
を、その後どのようにこれを行うことができますか?何か案は?私はそれがyyparseか何かを呼び出す場合だと思うが、私はそれと一緒にどこにもいない!
ありがとうございました。
ありがとう、アーネスト..まだ苦労しています。私は実際にレキシャにyylex()を持っていません - Flexはおそらくgetchar()を行うデフォルトのものを作成します。私はレクサーなどで自分自身を書く必要があると思う。 – ale