Main Content

Scan String

入力文字列をスキャンし、指定した形式に従って信号に変換する

  • Scan String block

ライブラリ:
Simulink / String

説明

Scan String ブロックは、入力 string をスキャンし、[書式設定] パラメーターで指定された形式に従って信号に変換します。ブロックは、値を 10 進数 (基数 10) 表現に変換し、結果を数値信号または string 信号として出力します。このブロックは、文の場合など、string を個々の成分に分解する場合に使用します。たとえば、[書式設定] パラメーターが "%s is %f." に設定されている場合、ブロックは string 信号と single 信号の 2 つの部分を出力します。入力が "Pi is 3.14" という string の場合、2 つの出力は "Pi""3.14" です。

メモ

値のすべての桁を表示できるほど大きくない数値表示形式を指定した場合、表示される値の精度が低下する可能性があります。結果はコンピューターのハードウェアとオペレーティング システムによって異なります。

Scan String ブロック、String to Double ブロック、String to Single ブロックは同一のブロックです。String to Double に構成された場合、ブロックは入力 string 信号を double の数値出力に変換します。String to Single に構成された場合、ブロックは入力 string 信号を single の数値出力に変換します。

コード生成のため、[コンフィギュレーション パラメーター][コード生成][インターフェイス][非有限数のサポート] チェック ボックスをオンにして、このブロックを含むモデルが非有限数をサポートするよう構成してください。

端子

入力

すべて展開する

入力 string。スカラーとして指定します。

データ型: string

出力

すべて展開する

形式が指定した形式と一致する出力データ。スカラーとして定義します。出力の合計最大数は 128 です。

入力 string を [書式設定] で指定された形式演算子に一致させることができない場合、ブロックは警告を返し、一致しなかった各形式演算子について適切な値 (0 または "") を出力します。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

形式が %f 形式に一致する出力データ。スカラーとして指定します。出力の合計最大数は 128 です。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

形式が N 形式に一致する出力データ。スカラーとして指定します。出力の合計最大数は 128 です。

データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

パラメーター

すべて展開する

入力の書式演算子。スカラーとして指定します。入力 string を指定された形式に一致させることができない場合、ブロックは 0 を返します。この戻り値 0 は、関数 sscanf の戻り値 (関数が入力を指定された形式と一致させられない場合の空行列) とは異なります。

  • String to Double ブロックでは、このパラメーターは %lf の既定値を持ちます。

  • String to Single ブロックでは、このパラメーターは %f の既定値を持ちます。

許容される形式演算子の詳細については、「アルゴリズム」の節を参照してください。

プログラムでの使用

ブロック パラメーター: Format
型: 文字ベクトル
値: '<filename>'
既定の設定: '"%d %f"'

ブロックの特性

データ型

double | integer | single | string

直達

はい

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

アルゴリズム

すべて展開する

Scan String ブロックは、以下の書式指定子プロトタイプを使用します。

%[width][length]specifier

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2018a で導入