Cで"#pragma section <XYZ>"
を使用するとは何ですか?C言語で「#pragma section <XYZ>」とは何ですか?
: -
XYZがある#define XYZ "ITEM 26.G03"
#pragma section <XYZ>
:#define XYZ "ITEM 26.G03"
私は"#pragma section"
Cで"#pragma section <XYZ>"
を使用するとは何ですか?C言語で「#pragma section <XYZ>」とは何ですか?
: -
XYZがある#define XYZ "ITEM 26.G03"
#pragma section <XYZ>
:#define XYZ "ITEM 26.G03"
私は"#pragma section"
セクションが作成するの使用に関するいくつかのexplainationが必要.objファイル内のセクション。
詳細については、MSDNを参照してください。
コードとデータは、オブジェクトファイルのセクションで生成され、リンカによって実行可能ファイルに結合され、最終的に特定の場所のターゲットメモリに配置されます。既定のセクションはあらかじめ定義され、特定の属性を持っています。 セクションプラグマは、デフォルトの属性の変更、新しいセクションの定義、および特定のセクションへのコードと変数の割り当ての制御、およびリンカコマンドファイルとその場所の制御に使用できます。
#pragma section
は、セクションクラス、およびオプションでクラス内の1つまたは2つのセクションを定義します。セクションクラスは、クラスのインスタンスに配置された変数とコードのアドレッシングとアクセシビリティを制御します。
#pragma
ディレクティブは、実装固有のディレクティブです。コンパイラに追加情報を提供する標準的な方法です。このディレクティブの形式は次のとおりです。プリプロセッサは指定された「名前」を認識した場合
#pragma name
、それは彼らが立ってどんなアクションを実行、またはコンパイラに情報を渡します。 "name"がC実装でサポートされていない場合、それは無視されます。
たとえば、gccコンパイラは、hereと記載されているプラグマのリストを受け入れます。 #pragma section
については
、GCCのドキュメントは言った:
セクション(「セクション名」)通常、コンパイラはそれ は、テキストセクションに生成したコードを配置します。ただし、追加の セクションが必要な場合や、特別なセクションに表示する特定の機能が必要な場合もあります。 section属性は、関数 が特定のセクションに存在することを指定します。例えば、宣言は、
となり、バー部分には
foobar
が置かれます。一部のファイル形式では任意のセクションがサポートされないため、セクション の属性は一部のプラットフォームで使用できません。 モジュールの内容全体を特定のセクションにマップする必要がある場合は、 リンカの機能を代わりに使用することを検討してください。
その他の詳細here。
http://stackoverflow.com/questions/9716637/what-is-the-use-of-pragma-code-section-and-data-section – codejammer
あなたが役に立ったら回答を受け入れることができます。また、将来の来場者には恩恵を受けるでしょう。 – Jaguar