Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

na_0021: MATLAB Function における文字列

サブ ID 推奨事項

  • NA-MAAB — a

  • JMAAB — a

MATLAB バージョン

すべて

ルール

サブ ID a

文字列の代入ステートメントは、MATLAB® 関数で使用しません。

カスタム パラメーター

該当なし

例 — 誤

文字列の代入ステートメントが、MATLAB 関数で使用されています。

function y = fcn(u)
%#codegen

str = 'A';

    for i = 1:u
        str = [str 'B'];    
    end

    if strcmp(str, 'ABB')
        y = int16(1);        
    else
        y = int16(0);    
    end
end

根拠

サブ ID a:

  • MATLAB 関数は、文字列を文字配列として保存します。その結果、同じ変数に異なる長さの文字列を保存すると、動的メモリ割り当てはサポートされず、文字列は保存されません。

    文字列が Switch Case ブロックに使用されている列挙型の使用を検討します。

検証

モデル アドバイザー チェック: Check usage of character vector inside MATLAB Function block (Simulink Check)

最終更新

R2020a

R2020a で導入