c-preprocessor

    0

    1答えて

    数日前にキーボードに問題があり、キーボードに(を入力できないという人がいました。 Cを書いたときの最初のことは、文字をどこかからコピーしてそれを貼り付けるか、プリプロセッサディレクティブ#defineを使うことでした。一度私が#defineを使用しようとすると、gccは#define OB (のようなものを書くことができず、私はかなり理解しています。これに類似した文章を書くことが可能ですか?#de

    0

    1答えて

    私は#define RTR r2ステートメントを持っているとしましょう。 RTRマクロの値を確認することはできますか?私はこれが不可能であると思い #if RTR == r1 || RTR == r2 It is router1 or router2! #endif に...

    30

    3答えて

    #整数シンボルの値をGCC(AVR)のアセンブリセクションの一部である文字列リテラルに逐語的に挿入することは可能ですか?スタジオ)? 以下のasm()ブロック内の文字列リテラル内で "LEDS"を48に置き換えたいとします。 #define LEDS 48 //I only want ONE mention of this number in the source int x = LEDS; /

    -3

    1答えて

    の次の行を解釈しないので、私は、この基本的な正方形の機能のための前処理マクロを使用しています: #define SQUARE(a) a*a これらを実行するには、これらの関数に渡され、それぞれのタスク::そのような機能を有する double f(double x) { return SQUARE(x); } double g(double x) { return SQU

    2

    2答えて

    私はどのようにrun the gcc preprocessorを知っています。 GCCは明らかにコードの静的解析/最適化を実行します。 2つの定数を追加するか、定数をシフトすると、 "a = constant < <"のままにするか、その操作を手動で実行してコードに "a = shifted_constant"を設定しても、結果のアセンブリコードは同じになります。 SHA256コードからこのスライ

    0

    2答えて

    intを返すC API関数をラップしようとしていて、条件をチェックして診断を提供し、エラーが発生した場合に例外をスローするマクロには、 #define CALL_INT(name, ...) do { \ if(!name(__VA_ARGS__)) throw std::runtime_error(#name " failed"); } while(0) //

    0

    1答えて

    条件が満たされた場合、特定の間隔後にデバッグメッセージを出力するデバッグメッセージを印刷/ログしたい。プリプロセッサのタイマティックを定義することは可能ですか?

    1

    2答えて

    を形成するように定義しています。 VERSION_MINORとREVISIONの間のスペースを無くしたい。私はこれを試しました: #define VERSION VERSION_MAJOR.VERSION_MINOR##REVISION しかしそれは"1.VERSION_MINORREVISION"を生成します。明らかに、これはどちらか動作しません: #define VERSION VERSI

    -2

    1答えて

    私はPythonで良いcallgraphプログラムを書いています。そのためにpycparserを使用します。 Pycparserは、抽象構文木を正しく作成するために、cファイルを前処理する必要があります。 私の最初のアプローチは、ファイルに対してgccの-Eオプションだけを使用し、それをpycparserに渡すことでした。 しかし、異なるプロジェクトでは、 "No such file or dir

    6

    2答えて

    最新のXCodeアップデート8.1(Build 8B62)以来、私はプリプロセッサマクロに関連して構文強調/コード補完に奇妙な問題を抱えています。 私はアップデート前に使用していたXCode 8 GMシードでうまく動作しましたが、スキームを選択するときにXCodeが正しいターゲットを認識しません。 たとえば、iOSとApple Watchの2つのターゲットを持つコントローラの静的ライブラリがありま