flex-lexer

    4

    1答えて

    私が取り組んでいるカスタムマイクロコントローラ用のアセンブラを書いています。私はバイナリに命令をアセンブルするポイントにアセンブラを持っています。 しかし、私は現在、ラベルを使用することに問題があります。現在、私のアセンブラは新しいラベルに遭遇すると、ラベルの名前とその参照先のメモリ位置を格納します。命令がラベルを参照すると、アセンブラはラベルをルックアップし、ラベルを適切な値に置き換えます。 こ

    6

    4答えて

    私はすでにある種の文法のパーサを持っているアプリケーションを持っています。もう1つ別の文法を追加する必要があります。 複数の可能性がありますか? もしそうなら、別のエントリーポイントはどうやって手に入りますか? おかげ デビッド・アラン・フィンチ

    2

    2答えて

    flexはUTF-8入力をサポートしていないようです。スキャナがASCII以外の文字を検出すると、スキャナはEOFであるかのようにスキャンを停止します。 フレックスでUTF-8文字を強制的に使用する方法はありますか?私はそれが実際にUTF-8の文字にマッチすることを望んでいません。パターン。 提案がありますか? EDIT 最も簡単な解決策は次のようになります。 '' [\ x00- \ XFF]

    4

    1答えて

    lex/yacc(flex/bison)を使用するときにメッセージ/プロンプトを表示する方法を理解しようとしています。例えば が、メインはそうのようになります。yylexのを呼び出してyacc呼び出す int main(int argc, char *argv[]) { yyparse(); } 、()。これにより、STDINを待機する空白行が生成されます。どのように私は...の

    49

    7答えて

    フレックス/バイソンパーサーを使ってread-eval-printループを作成します。問題は、フレックス生成されたレクサーはFILE *型の入力を望んでおり、char *にしたいと思います。これを行うためにとにかくありますか? パイプを作成し、それに文字列を送り、ファイル記述子を開いてレクサーに送信することをお勧めします。これはかなりシンプルですが、複雑なプラットフォームではありません。より良い方

    5

    5答えて

    いくつかの引数の前に置くことができるいくつかの追加のキーワード(例えば、 "署名されていない"または "登録"と同じ方法)を使用して、Cのような言語で書かれた関数定義があります。これらの行だけでなく、いくつかの関数スタブを生成し、実際のCコードを生成します。 Flex/Yaccが最適な方法ですか? regexpsを使ってシェルスクリプトやPythonスクリプトを書くよりも遅くなるでしょう(追加キー

    49

    2答えて

    私はへのオプションを探しています。これは標準入力からソースファイルを読み込むようになっていますので、flex 'のようなツールからオブジェクトファイルを生成するためにこのようなことを行うことができます。flex-tオプション)は、標準出力に生成されたCを書き込みます: flex -t lexer.l | gcc -o lexer.o -magic-option-here 私は本当に生成されたC

    11

    3答えて

    私はPHPでFlex/Bison(またはLex/Yacc、et。al。)のサポートを受ける方法を探しています。具体的には、Web UIにブール値のクエリパーサーを実装しています.Cのパーサーを呼び出したり、Pythonなどに渡すのではなく、PHPの内部ですべての操作を保持しています。 PHPのための

    2

    1答えて

    Bison(.y)ファイルとflex(.lex)ファイルを書くためのコーディング規則とガイドラインは何ですか? コードセクションの長さとスタイルを記述してください。 おかげで、 アサフ P.S.、 あり、それhereについての古いスレッドですが、私は、より詳細な回答を探しています(とSOそれを持っています!)。

    0

    3答えて

    私は 'flex'をインストールしようとしています。私は以前のバージョンのflexをインストールしていません。私はLinuxのバージョンを削除していますので、apt-getやyumはありません。私はflexパッケージ(flex-2.5.33.tar.gz)を解凍し、./configure(これは動作します)をインストールしました。しかし、その後、私は実行し、それは失敗しました。私は./config