Можно создать автономное, чтобы запустить приложение, не передавая или получая любые аргументы к или от него.
Однако аргументы могут быть переданы автономным приложениям, созданным с помощью MATLAB® Compiler™ таким же образом, что входные параметры передаются любому основанному на консоли приложению.
Следующее является командами в качестве примера, используемыми, чтобы выполнить приложение под названием filename
от Windows® или командной строки Linux® с различными типами входных параметров.
Передать.... | Используйте этот синтаксис.... | Примечания |
---|---|---|
Файл с именем helpfile | filename helpfile | |
Числа или буквы | filename 1 2 3 a b c | Не используйте запятые или другие разделители между числами, и обозначает буквами вас передача. |
Матрицы, как введено | filename "[1 2 3]" "[4 5 6]" | Поместите двойные кавычки вокруг входных параметров, чтобы обозначить пробел. |
Переменные MATLAB |
for k=1:10 cmd = ['filename ',num2str(k)]; system(cmd); end | Чтобы передать переменную MATLAB программе, как введено, необходимо сначала преобразовать его в вектор символов. |
Вы вызываете автономное приложение, которое использует аргументы из MATLAB с любой из следующих команд:
SYSTEM
DOS
UNIX
!
Чтобы передать содержимое переменной MATLAB к программе как вход, переменная должна сначала быть преобразована в вектор символов. Например:
Задайте целую команду, чтобы запустить приложение как вектор символов (включая входные параметры). Например, передавая числа и буквы 1 2 3 a b c
мог быть выполнен с помощью команды SYSTEM
, можно следующим образом:
system('filename 1 2 3 a b c')
Можно также использовать !
(удар) оператор, из MATLAB, можно следующим образом:
!filename 1 2 3 a b c
Когда вы используете !
(удар) оператор, остаток от входной строки интерпретирован как команда SYSTEM
, таким образом, не возможно использовать переменные MATLAB.
Чтобы запустить автономное приложение путем двойного клика по нему, вы создаете пакетный файл, который вызывает автономное приложение с заданными входными параметрами. Например:
rem This is main.bat file which calls rem filename.exe with input parameters filename "[1 2 3]" "[4 5 6]" @echo off pause
Последние две строки кода в main.bat
добавляются так, чтобы окно, отображающее ваш вывод, осталось открытым, пока вы не нажимаете клавишу.
Если вы сохранили этот файл, вы запускаете свой код с аргументами, заданными выше путем двойного щелчка по значку для main.bat
.
При выполнении файлов MATLAB, которые используют аргументы, которые вы также планируете развернуть с MATLAB Compiler, помните о следующем:
Входные параметры, которые вы передаете своему исполняемому файлу от системного приглашения, получены как вход вектора символов. Таким образом, если вы ожидаете данные в другом формате (например, дважды), необходимо сначала преобразовать вход вектора символов в требуемый формат в коде MATLAB. Например, можно использовать STR2NUM
, чтобы преобразовать вход вектора символов в числовые данные.
Вы не можете возвращаемые значения от своего автономного приложения до пользователя. Единственный путь к возвращаемым значениям от скомпилированного кода состоит в том, чтобы или отобразить его на экране или сохранить его в файле.
В порядке иметь данные, отображенные назад на экран, выполнить одно из следующих действий:
Не подавите команды, которые приводят к вашим данным о возврате. Не используйте точки с запятой, чтобы не подавить.
Используйте команду DISP
, чтобы отобразить значение переменных, затем перенаправьте выходные параметры к другим приложениям с помощью перенаправлений (оператор >
) или каналы (||
) в системах не-Windows.
Взятие Входных параметров и Отображение на Экран Используя файл MATLAB. Вот два способа использовать файл MATLAB, чтобы взять входные параметры и данные об отображении на экран: