compiler-construction

    0

    1答えて

    フレックスから送られたバイソンのトークン値を印刷しようとしていますが、何らかの理由で印刷された値がごみになることがあります。 のlexコード: \".*\" { std::string* s1 = new std::string(yytext); std::string s2 = *s1; std::string s3 = s2.substr(1,s2.size() - 2)

    2

    1答えて

    自分のフォーマットをjavaファイルに解析するJavaプログラムを作成しようとしています。例えば、私は[my_own_extension]。 show("Hello World"); とハローとしてこのファイルを保存すると、ファイルを書いて、私のプログラムと輸出からそのような何かを読んで、 class Hello { public static void main(String[] args

    0

    1答えて

    私が関与する限り、バイトコードを処理するすべての仮想マシンは、例としてJVMを使用し、(バイトコードを実行している)VMの現在の状態を何らかの形で分析して独自のガベージコレクタを実装し、ヒープから。今、私はそれが事前のコンパイルになると全く混乱しています。つまり、アプリケーションを最初に起動する前に、バイトコード全体がネイティブコードにコンパイルされることになります。だから...アプリケーションが

    0

    1答えて

    私はCの文法を探していて、このリンクが見つかった問題はcとlexコードの文法がありますが、私は加算、乗算のようなセマンティクスは見当たりません。構文チェックがありますが、他のツールで実装されているセマンティクスはどこにあるのかについてはセマンティクスを記述することもできます。 私はセマンティクスを書くには小さなコンパイラを実装しようとしていますが、関数を使ってyaccで記述するのは良いですか?

    0

    1答えて

    私はこの質問がここにはないかもしれないことを知っていますが、現時点ではドラゴンの本を読んでコンパイラを書くことについて学びます。コンパイラのソースコードを入手できるかどうか誰にでも分かりました。 SML?私は機能的なパラダイムであり、小さなバッファを忘れてしまった場合、機能的なコードを最適化するためには良いコンパイラであるため、使いたいです。 それは私がプログラミングを学んだ一番最初の言語だったの

    -1

    1答えて

    私は自分自身のミニ言語用のパーサーを構築しようとしています。それはYACC自身によってC++に翻訳されています。 問題は、YACCは入力の第2行から最初のトークンだけでなく第1行も読み取っていて、それを対応するルールと照合していますが、入力の最初の行でトークンのみを読み取る必要があります。対応するルールでそれを一致 私の入力ファイルは次のとおりです。 print "hello" a = 10

    0

    1答えて

    ちょっと簡単な質問をしましたが、Googleでの検索は失敗しました。私は完璧なプログラミング言語を探しています。要するに、他のすべてのプログラミング言語(Java、C、その他のもの)を表現できるような言語はありますか?他の言語で見られるすべての語彙と概念を含む。クラス、関数、メソッド、スレッドなど ありがとうございます!

    0

    1答えて

    私はコンパイルプロセスのさまざまな段階を読んでいました。私はリンクフェーズに達したとき、それはそれがexeファイルにするために1つに定義されたライブラリとユーザーのオブジェクトファイルをリンクすることがわかりました。しかし、前処理はすでに文#includeをその内容(すなわちprintfなどの関数の定義)に置き換えました。 私はどこかに間違っていることを知っていますが、間違って理解したことはありま

    -7

    2答えて

    私たちにはわかっているように、初期化されていない変数を使用することは、CまたはC++での未定義の動作です。たとえば、次のような場合: int x; printf("%d", x); 予測できない数値が生成されます。 私の質問は、Cコンパイラが初期化されていない変数を使用して処理する方法です。