c-preprocessor

    0

    1答えて

    私はこのような例のために、いくつかの矛盾プリプロセッサ関数定義を含む大規模なプロジェクトを持っている : 1.H: #define CONFLICTINGMACRO(a, b) {doSomething(a, b)} 2.H: #define CONFLICTINGMACRO(a, b, c) {doSomethingElse(a, b, c)} を いくつかのファイルは両方のヘッダーをイ

    0

    1答えて

    IBM Metal C Prologのパラメータ化されたプリプロセッサマクロを作成したいと思います。 初期unparametrizedフォームは本当のプロローグは #pragma prolog(Foo, " #MCPROLG MAIN=(YES,16,132)") より複雑ですが、質問のために重要な部分は、文字列内の値があるということです。 #pragmaディレクティブ自体は、マクロの一部にするこ

    1

    1答えて

    次のスニペットで#の前の意味は何ですか?私は定義する前の#またはプリプロセッサ指令のために使用されている#を参照していません。 // Quote a given token stream to turn it into a string. #define DEV_QUOTED_HELPER(s) #s #define DEV_QUOTED(s) DEV_QUOTED_HELPER(s) こ

    2

    1答えて

    私は、いくつかの変数を定義するマクロがあるとします。コードの異なる部分で2つの方法を定義する必要があります(はい、それは悪い考えですが、リファクタリングは長続きします)。 以下のスニペットを有効にすることはできますか。つまり、4と1を印刷することは可能ですか? #include <iostream> #define ENABLE #ifdef ENABLE #define B 4 #def

    0

    1答えて

    このプログラムは、ユーザーからの入力を取得し、2という名前のマクロに格納しようとします。出力として1 ... それはなぜですか? #include <stdio.h> //declares two int two; //Takes input to store it in two #define two scanf("%d",&two) int main() { prin

    1

    1答えて

    ブーストバージョンに応じて、ブーストヘッダをインクルードする方法:https://github.com/boostorg/property_tree/commit/ea940990691de91e9b22255d9b450fcdac237646 を私は古いと、一部のユーザーは、ブーストの古いバージョンでビルドコードベースに取り組んでいますヘッダ位置、例えば新しい#include <boost/pr

    0

    1答えて

    Fortran2008で条件付きコンパイルを使用する必要があります。これまでのところ私はthis solutionを見つけたが、あなたを行い、それが何らかの形で私のために動作しません。また、この gfortran -Dconnection_m_EXPORTS -I/home/martin/4Neuro/build/lib -O2 -std=f2008 -cpp -fPIC -c /home/mar

    0

    1答えて

    私は自分のアプリケーションに使用するtypedefを構築するためにマクロを展開する必要があります。マクロは単純なtypedefを構築します。私が持っている質問は何ですか?__VA_ARGS__(つまり、引数をもっと遠くまで失っていますか?)多数のマクロに渡されたときの動作と、それが正しい結果を出すために別のスキャンが必要なときを知る方法です。高次のマクロを作成するときの問題DERIVEDマクロ。

    1

    1答えて

    .cppファイルにいくつかのクロスプラットフォームコードがあり、CVPixelBufferからCVOpenGLESTextureRef/CVOpenGLTextureRefに変換されています。 CoreVideo関連の機能クロスプラットフォームを作るために、私はヘッダファイルに次の操作を行います #ifdef IOS_SHARED_SUPPORT #import <OpenGLES/EAGL.h