C へのコード変換における注意点
•
|
CodeGeneration[C] によって生成される C コードは ANSI C の規格に従います。
|
|
説明
|
|
•
|
CodeGenerationDetails ヘルプページに記載されている関数のほかに、CodeGeneration[C] では次の Maple 関数を使用できます。
ceil、floor、if (演算子形式)、length、sprintf、system
|
•
|
一般に、CodeGeneration[C] で使用できる数学関数は ANSI C 規格の数学ライブラリである math.h ライブラリの関数に変換されます。
|
•
|
ANSI C には max、min、round、sign、signum に相当するものがないため、CodeGeneration[C] はそれらを条件演算子付きの式に変換します。
|
•
|
関数 mod、modp、および mods はすべて、モジュロ演算子 (剰余演算子) % を使用した ANSI C の数式に変換されます。
|
|
注意: 引数の値によっては、これらの関数の動作は % の動作と一致しない場合があります。
|
•
|
2 を超える指数を含む Maple 式は pow 関数コールに変換されるので、自動型推定システムは適切な型を推定できない場合もあります。
|
•
|
入力コード内にある ANSI C 規格 (文字または下線で始まり、最大 31 文字までの英数字と下線の文字列) に合致しない識別子は、生成される出力に有効な識別子に置き換えられます。
|
•
|
Maple の Arrays と rtables の範囲は、結果の C 配列がインデックス 0 から始まるように調整されます。
|
|
モジュールのエクスポートは、C ヘッダーファイルに適した一連の変数宣言と関数プロトタイプとして出力され、モジュールメンバーごとに初期化と関数定義が行われます。これらはヘッダーファイルに関連付けられたソースファイルに含められます。
|
|
|
Download Help Document
Was this information helpful?