Передача аргументов в исполняемый файл из командной строки
Я пытаюсь передать аргументы исполняемому файлу Фортрана из командной строки. Пример программы, которая достигает этого в C (взято отсюда):
#include <stdio.h>
int main (int argc, char *argv[])
{
int count;
printf ("This program was called with \"%s\".\n",argv[0]);
if (argc > 1)
{
for (count = 1; count < argc; count++)
{
printf("argv[%d] = %s\n", count, argv[count]);
}
}
else
{
printf("The command had no other arguments.\n");
}
return 0;
}
Выход этой программы:
This program was called with "./fubar".
argv[1] = a
argv[2] = b
argv[3] = c
Мой вопрос сейчас, как бы я закодировал эту программу (и, следовательно, эту функциональность) в Fortran? Я гуглил это, и кажется, что только Fortran 2003 имеет функцию передачи аргументов исполняемым файлам (это правильно)?
1 ответ
Для дальнейшего использования, как указано выше @High Performance Mark, это довольно легко сделать в Fortran 2003. Приведенный ниже пример кода взят здесь и показывает, как:
PROGRAM test_get_command_argument
INTEGER :: i
CHARACTER(len=32) :: arg
i = 0
DO
CALL get_command_argument(i, arg)
IF (LEN_TRIM(arg) == 0) EXIT
WRITE (*,*) TRIM(arg)
i = i+1
END DO
END PROGRAM