Я работаю над 40-летним кодом спагетти Fortran с большим количеством переменных, которые неявно объявлены. Таким образом, нет простого способа узнать, какие переменные существуют в коде, чтобы инициализировать их значения. Теперь, есть ли способ сообщить компилятору (например, Intel Fortran) инициализировать все переменные в коде конкретному значению по умолчанию (например, -999), отличному от нуля или очень большому числу, предоставленному компилятором Intel?Fortran: Инициализировать все переменные до определенного значения по умолчанию
ответ
gfortran
предоставляет некоторые варианты этого. Целые числа могут быть проиндексированы с помощью -finit-integer=n
, где n
- целое число. Для реальных номеров вы можете использовать -finit-real=<zero|inf|-inf|nan|snan>
. Вместе с -ffpe-trap=denormal
это может быть очень полезно, чтобы получить неинициализированные реалы.
Вы, вероятно, хотите:
ifort -check uninit
Примечание на странице человека это только проверяет скаляры
Кроме того, на основе некоторых быстрого тестирования он является довольно слабым проверка. Он не улавливает эту простую вещь, например:
program test
call f(i)
end
subroutine f(j)
write(*,*)j
end
возвращается 0
..
Я полагаю, его лучше, чем ничего, хотя.
Подробнее о слабости этой проверки: https://www.nas.nasa.gov/hecc/assets/pdf/training/UnInit_Fix_your_code_2012_10_31.pdf – astrojuanlu
- 1. Инициализировать массив байтов до определенного значения
- 2. Как по умолчанию инициализировать локальные переменные встроенных типов в C++?
- 3. fortran 77 аргументы по умолчанию
- 4. MySql обновляет все поля в столбце до значения по умолчанию
- 5. Инициализировать масштаб по умолчанию
- 6. инициализировать все переменные, но до сих пор получить NullPointerExceptions ошибку
- 7. Как инициализировать список до определенного значения в Python
- 8. цикл до определенного значения
- 9. Как я могу по умолчанию инициализировать переменные шаблона статического класса
- 10. Как я могу автоматически инициализировать все скалярные переменные в Perl?
- 11. Fortran: переменные изменяются сами по себе
- 12. SQL Query - возвращает все значения до определенного значения
- 13. Выполнение цели плагина до значения по умолчанию
- 14. gvisMotionChart: изменить переменные по умолчанию
- 15. Переменные среды по умолчанию Bitrise
- 16. Ссылки Fortran на переменные
- 17. Формы Windows сбрасываются до значения по умолчанию
- 18. Обновить тег select до значения по умолчанию
- 19. Сбросить Tkinter Widget до значения по умолчанию
- 20. По умолчанию значения свойства
- 21. Где инициализировать настройки приложения iPhone по умолчанию
- 22. как инициализировать все значения целочисленного массива до 0 в C++?
- 23. инициализировать все значения в яваскрипте массива до 0 без итерации
- 24. Как инициализировать переменную до максимального значения
- 25. Как сбросить все наблюдаемые значения по умолчанию
- 26. Джанго ManyToMany все значения по умолчанию
- 27. Как восстановить все переменные среды по умолчанию в пакетном скрипте
- 28. Должен ли я инициализировать все переменные?
- 29. Как инициализировать значения поплавка по умолчанию в массиве структур?
- 30. Инициализировать пользователя django, чтобы он имел значения по умолчанию
Это именно то, что мне нужно. Благодаря! – King