Main Content

コード生成での文字のエンコード

MATLAB® では文字は 16 ビットの Unicode で表されます。コード ジェネレーターでは、文字はロケール設定で指定された 8 ビットのコードセットで表されます。MATLAB とコード生成の文字エンコードの違いによって、次のような結果になります。

  • 255 桁を超える数値を含む文字のコード生成でエラーが発生する。

  • 128 ~ 255 範囲の文字の場合、ロケール設定のコードセットで文字を表したり、文字が等価の 16 ビットの Unicode 文字に変換できない場合がある。この範囲の文字を MATLAB と生成コード間で受け渡すと、エラーが生じたり、異なる回答が返される場合があります。

  • コード生成では、一部のツールボックス関数が 7 ビットの ASCII 文字のみを受け入れる。

  • 7 ビットの ASCII コードセットにない文字を double などの数値型に文字をキャストすると、MATLAB とは異なる結果が生成されたコードに返される場合がある。コード生成では、文字を使った演算を実行しないことをお勧めします。

関連するトピック