Не удалось включить библиотеку c ++ в lex - PullRequest
0 голосов
/ 17 ноября 2018

Я пытался провести некоторый лексический анализ с помощью LEX, и я хотел бы включить некоторую библиотеку c ++ в поле определения. Тем не менее, я пробовал несколько раз, но всегда получал это сообщение об ошибке:

sample.l:2:23: fatal error: iostream: No such file or directory compilation terminated.

А вот так выглядит мой код:

 %{ #include<iostream> void Print_input(char* yytext){ //function... } %} 

У кого-нибудь есть подсказка? Заранее спасибо.

1 Ответ

0 голосов
/ 17 ноября 2018

Вы компилируете свой код C ++ как C, используя gcc - вместо этого используйте g++.

Обратите внимание, что, хотя gcc обычно использует расширение файла для определения языка, g++ будет компилировать файлы .c как C ++ даже без опции -x.

...