Работает как шарм и самое быстрое упомянутое решение возможно, я думаю.

я есть внешне предоставленный файл .cpp. Это смесь C-совместимого кода и немного C ++. Код C ++ - это просто оболочка для C, позволяющая использовать возможности C ++.

Оно использует#ifdef __cplusplus макросы для защиты кода на C ++, и это здорово. К сожалению, если я пытаюсь скомпилировать с использованием gcc, он обрабатывает его как C ++ из-за окончания файла. Мне известны различия между gcc и g ++ - я не хочу компилировать как C ++.

Можно ли заставить gcc обработать этот файл как файл C? Я пытался использовать, например,--std=c99, но это правильно выдает ошибку, что C99 недопустим для C ++.

Переименование файла в .c работает, но я хотел бы избежать этого, если это возможно, потому что он предоставляется извне, и было бы неплохо, чтобы он оставался в первозданном виде.

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос