7

重複の可能性:
MATLABで文字列を数値配列に変換します

私はMatlabの新しいユーザーです。上記の実行方法を教えてください。私は完全に困惑しています。

よろしくお願いします。

4

3 に答える 3

12

MatLab の文字列は単なる文字の配列です。

減算'0'して、各桁の値を残すことができます。

> '321' - '0'

ans =

     3     2     1
于 2012-09-03T23:32:46.470 に答える
9

または、暗号化が少ないstr2numstr2double、文字配列の各要素に適用されます

arrayfun(@str2double, '321')

おまけとして、これはNaN非スカラーに対応する文字列値にも返されます。

>> arrayfun(@str2double, '321a')

ans =

     3     2     1   NaN

したがって、文字列'321a4'の場合、次は有効なスカラーのみを返します。

b = arrayfun(@str2double, '321a4')
c = b(~isnan(b))
c =

 3     2     1     4
于 2012-09-04T00:02:46.827 に答える
0
while(*str)
{

    value [i]=  (*str - '0');
    start++;
    i++;

}
于 2012-11-08T04:25:43.927 に答える