Matlab на cmd (winxp)

Просто пройдите всю строку и поместите каждый символ на свое место. Не забывайте, что строка «ABC» занимает четыре байта.

Когда вы просматриваете символы входной строки, выходная строка которой они вводят, выглядит следующим образом:

0, 0, 0, 1, 1, 1, 2, 2, 2 , 3, 3, 3

Это i/3. Схема положения, в котором они находятся на выходе, выглядит следующим образом:

0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2

Это i%3. Таким образом, если i является позицией во входной строке, позиция в выходном массиве будет [i/3][i%3]. Таким образом:

#include <stdio.h>
#include <string.h>

#define MAX 512

int main(){
    char str[MAX]="ABCDEFGHIJKL";
    int count=0, i=0;
    char sub[3];
    char arr[MAX/3][4]={};

    /* Go through the string putting each character in
       its proper place */
    for (int i = 0; i < strlen(str); ++i)
        arr[i/3][i%3] = str[i];

    /* Print the strings out */
    for (int i = 0; i < (strlen(str) / 3); ++i)
        printf("%s\n", arr[i]);
}

ABC
DEF
GHI
JKL

5
задан Amro 12 June 2012 в 15:45
поделиться

5 ответов

Чтобы ответить на ваш вопрос, запустите matlab следующим образом:

matalb -nodesktop -nosplash

Это работает на Linux и Windows. В Linux вы вводите это в командной строке, и Matlab будет запускаться в том же командном окне в текстовом режиме. Таким образом, вы получите "оболочку Matlab", которую вы хотели. В Windows перейдите в каталог, в котором установлен Matlab, и введите ту же команду. Он откроет урезанное окно командной строки matlab безо всяких наворотов рабочего стола matlab.

Теперь, по моему личному мнению, редактор matlab с его встроенным отладчиком - ваш друг. Он также имеет привязки клавиш Emacs, если это помогает. Также проще выполнять команды и просматривать результаты на рабочем столе Matlab, чем когда Matlab запускается в текстовом режиме. Единственный раз, когда вы действительно хотите использовать текстовый режим, это если ваш код Matlab занимает много времени, и вас интересует только конечный результат. Или если вы используете несколько экземпляров Matlab. Текстовый режим занимает гораздо меньше памяти, и в linux вы можете легко запустить запуск из командной строки и перевести его в фоновый режим.

Фактически, проверьте аргументы командной строки для matlab. Вы можете сделать другие интересные вещи, например, заставить matlab выполнить единственную функцию и выйти из нее, или выполнить перенаправление скрипта в matlab, например: matlab

10
ответ дан 18 December 2019 в 09:53
поделиться

On Linux environments, Matlab can be started in text mode

matlab -nosplash -nodesktop 

but this doesn't work on Windows. which starts it in the current shell. On Windows, this opens a new text-only window. I know of no way to get it to run inside the current console on Windows.

Perhaps there's some way you can attach to it running it in http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/ref/matlabwindows.shtml&http://www.google.com/search?rlz=1C1GGLS_enUS302US311&sourceid=chrome&ie=UTF-8&q=matlab+command+line+windows'>automation server mode.

Another option if you're really desperate could be to make a virtual machine and install linux in it. Then I imagine there are ways to configure vim to work nicely with Matlab (I'm an emacs person these days and there are solutions for emacs).

0
ответ дан 18 December 2019 в 09:53
поделиться

Я бы сделал следующее:

  1. Запустите MATLAB
  2. . Не открывайте файл .m в matlab
  3. . Откройте файл в выбранном вами редакторе
  4. . Запустите функцию из MATLAB как обычно

. причина, по которой это не сработает, поскольку MATLAB не должно волновать, что использовалось для редактирования файла.

Это не даст вам «оболочку», но весь графический интерфейс, но я не могу придумать причину, почему вы не хотел бы иметь это, если это доступно.

2
ответ дан 18 December 2019 в 09:53
поделиться

Вы действительно готовы работать с dev без отладчика m-файлов? Мне кажется, что вы бы ограничились практически тривиальными программами. После очень короткого периода обучения, я думаю, вы найдете фантастический встроенный отладчик Matlab (а я - специалистом по VS).

Если вы настаиваете на этом, лучшим вариантом будет скомпилировать ваши m-файлы. быть управляемым в одиночку. Для этого потребуется доступ к (не дешевому) компилятору matlab .

Обратите внимание, что существует значительная разница между компилятором, распространяемым с версиями matlab до 6.5, и теми, которые распространяются с matlab 7+ (не знаю номеров версий компилятора). В 6.5 компилятор генерировал c-код, который можно было редактировать и компилировать отдельно. Начиная с 7 лет, компилятор не выполнял компиляцию, преобразование, или любое генерирование кода в этом отношении: при запуске «скомпилированной» программы сегодня практически запускается ее на виртуальной машине Matlab, называемой MCR - которая охватывает почти все функциональные возможности matlab. Это массивный - установщик MCR (установщик!) Весил 130M в прошлый раз, когда я проверял.
Некоторые дебаты по этому поводу все еще можно найти в новостных группах, но это сейчас не важно. На самом деле подход MCR кажется ближе к тому, что вы ищете.

И, кстати, для меня matlab -nosplash -nodesktop отлично работает на окнах - он запускает matlab в качестве консоли, но это лишит вас обоих текстового редактора и отладчика ...

5
ответ дан 18 December 2019 в 09:53
поделиться

У меня была та же проблема, что и у Кигурая. Мне нужно было управлять Matlab с помощью Python, поэтому я нашел следующее решение:

В Python:

import os

os.chdir('W:\\monrépertoire')

os.spawnl(os.P_NOWAIT, 'monscript.bat')

В monscript.bat:

matlab.exe -r interp_3D  -nodesktop –nosplash
0
ответ дан 18 December 2019 в 09:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: