タグ付けされた質問 「c-preprocessor」

CおよびC ++言語プログラムをコンパイルする前に適用されるテキストマクロプロセッサ。このタグは、Objective-CまたはC#の#ディレクティブなど、同じ機能から派生した、または同じ機能を持つ他のコンパイラ/言語に関する質問にも使用できます。

5
マクロを使用してソースファイルの行を数えますか?
C / C ++プリプロセッサを使用して、ソースファイル内の行をマクロまたは何らかのコンパイル時に使用可能な値にカウントすることは可能ですか?例えば私は置き換えることができMAGIC1、MAGIC2かつMAGIC3使用している場合、以下では、何とか値4を取得しますかMAGIC3? MAGIC1 // can be placed wherever you like before the relevant // lines - either right before them, or in global scope etc. foo(); MAGIC2 bar(); MAGIC2 baz(); MAGIC2 quux(); MAGIC2 // ... possibly a bunch of code here; not guaranteed to be in same scope …

2
マクロを使用して追加の要素で配列を初期化する
マクロに応じて2つの異なる方法で配列を初期化しています。 # if feature_enabled const int v[4] = {1, 2, 3, 4}; #else const int v[5] = {0, 1, 2, 3, 4}; #endif 問題は、割り当てのデータが実際には大きな行列であり、さまざまな理由から、わずかな変更を加えてデータをコピーするだけでは適切な解決策ではないということです(配列の先頭に1つだけ要素があります)。 最後のn-1要素を本質的に複製せずに、ここで行ったのと同じことを行う方法があるかどうか疑問に思っていました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.