Использование чтения (звездочка, звездочка) в Фортране, похоже, не работает, если строка, читаемая пользователем, содержит пробелы.
Рассмотрим следующий код:
character(Len = 1000) :: input = ' '
read(*,*) input
Если пользователь вводит строку «Здравствуйте, меня зовут Джон Доу», только «Hello» будет храниться на входе; все после пробела игнорируется. Я предполагаю, что компилятор предполагает, что «Hello» является первым аргументом, а «my» - вторым, поэтому для захвата других слов мы должны использовать что-то вроде read (, ) input1, input2, input3 ... и т. д. Проблема этого подхода заключается в том, что нам нужно было бы создавать большие символьные массивы для каждого ввода и точно знать, сколько слов будет введено. Есть ли способ обойти это ?? Какая-нибудь функция, которая на самом деле будет читать все предложение, пробелы и все? Большое спасибо!