я преобразовал некоторые Fortran кода на C. Мне было интересно, если кто-то может помочь мне решить следующую задачу:Автоматически исправлять недостающую скобку в C
warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
Я знаю, что это предупреждение вызвано синтаксисом, как это:
A || B && C
Что должно быть написано как:
A || (B && C)
Мой компилятор может компилировать код си nce & & имеет более высокий приоритет, чем || поэтому он просто представляет круглые скобки.
Проблема в том, что это предупреждение происходит примерно в 30 000 раз, так как я работаю над большим проектом.
Есть ли какой-либо инструмент, который может автоматически вставлять круглые скобки вокруг всех & &?
Если вы хотите быть абсолютно уверенным, я боюсь, что вам нужно будет реализовать парсер кода C, чтобы достичь этого ... – Spook
Действительно? 30.000 раз? Сколько строк у вас есть? Или такое же предупреждение отображается несколько раз из-за заголовков, которые входят в различные модули? Тогда стоимость изменения материала вручную может быть не так уж плоха. –
Как вы преобразовали из Fortran в C? Похоже, вам нужно исправить этот шаг. –