Что такое зарезервированное слово / переменная ACCY на Фортране? - PullRequest
0 голосов
/ 01 мая 2009

Я пытался просмотреть очень старый код FORTRAN и наткнулся на следующее утверждение:

IF (XKJ.GT.ACCY) THEN

Я просмотрел весь код и не нашел объявления для ' ACCY '. Я предполагаю, что это встроенная переменная / константа / функция, но не смог найти определение. Я «погуглил» его и наткнулся на другие образцы FORTRAN с похожими выражениями (но без определения ACCY).

Прошло 20 лет с тех пор, как я посмотрел код FORTRAN. Кто-нибудь знает, что такое ACCY ? 1010 *

Ответы [ 2 ]

7 голосов
/ 01 мая 2009

Это, несомненно, переменная, содержащая «точность», используемую для измерения вычислений с плавающей запятой - которая может дрейфовать из-за неточного представления некоторых чисел с плавающей запятой. В Fortran переменные не должны быть объявлены, если вы не используете опцию компилятора (или оператор IMPLICIT), чтобы включить эту функцию. Переменные, которые начинаются с A-H и O-Z, автоматически учитывают РЕАЛЬНЫЕ переменные (I-N - целые числа). Рассматриваемый компилятор может обнулять или не обнулять память для переменной, поэтому, если она не где-то назначена - обычно это ОБЩИЙ блок - это может быть ноль или какое-то произвольное значение.

3 голосов
/ 01 мая 2009

Технически, в Фортране нет зарезервированных ключевых слов. хотя определение ключевого слова в качестве идентификатора делает вещи очень запутанными. Это звучит / выглядит для меня так, как будто это определенная простота, и это его первое использование, при котором ACCY будет 0.

Определена ли подпрограмма, в которой определен этот фрагмент кода, IMPLICIT NONE ? если нет, включите его и посмотрите, не помечает ли компилятор ACCY как не определенный. Если он помечен, вы будете знать, почему вы не можете найти его здесь :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...