exponenta event banner

Создание кода для строк

Генерация кода поддерживает массивы строк MATLAB ® 1 к 1. Создание кода не поддерживает массивы строк, содержащие более одного элемента.

Строковый массив 1 на 1, называемый строковым скаляром, содержит одну часть текста, представляемую в виде символьного вектора 1 на n. Примером строкового скаляра является "Hello, world". Дополнительные сведения о строках см. в разделе Текст в строковых и символьных массивах.

Ограничения

Для скаляров строк создание кода не поддерживает:

  • Глобальные переменные

  • Индексация фигурными скобками {}

  • Отсутствующие значения

  • Их использование в качестве сигналов, параметров или памяти хранилища данных Simulink ®

При создании кода ограничения, применимые к классам, применяются к строкам. См. раздел Определение классов MATLAB для создания кода.

Различия между сгенерированным кодом и кодом MATLAB

  • Преобразование строки, содержащей несколько унарных операторов, в double может давать различные результаты между MATLAB и сгенерированным кодом. Рассмотрим эту функцию:

    function out = foo(op)
    out = double(op + 1);
    end

    Для входного значения "--", функция преобразует строку "--1" кому double. В MATLAB ответ: NaN. В сгенерированном коде ответ: 1.

  • Двойное преобразование для строки с неправильными запятыми (запятыми, которые не используются в качестве разделителей тысяч) может привести к различным результатам MATLAB.

Связанные темы