Унарный оператор, следующий за арифметическим оператором (используйте скобки) в (1) - PullRequest
0 голосов
/ 24 мая 2018

Когда я компилирую код на Фортране, я получаю следующее предупреждение:

nse3dmpi_subs.f: 603: 15:

  .        -HALF*aimag(k3(k)*(uh(i,j,k,1)*conjg(uconv3h(i,j,k,1))-
           1

Предупреждение: расширение: унарный оператор после арифметического оператора (используйте скобки) в (1)

Как мне избавиться от предупреждения?

1 Ответ

0 голосов
/ 24 мая 2018

Недавно я получил точно такую ​​же ошибку.Это произошло потому, что я закончил одну строку с помощью «+», сделал продолжение строки и начал следующую строку с «-».Я избавился от этого, убрав «-» из второй строки и заменив «+» на «-».Вместо:

      x = (really long expression) +
     1      -2.*(other long expression)

Мне нужно:

      x = (really long expression) -
     1     2.*(other long expression)

В качестве альтернативы я мог бы сделать:

      x = (really long expression) +
     1      (-2.*(other long expression))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...