Как я могу вернуть токен, который не соответствует ни одному другому токену, в вектор токенов в The Flex Tokenizer?C++

Программы на C++. Форум разработчиков
Anonymous
Как я могу вернуть токен, который не соответствует ни одному другому токену, в вектор токенов в The Flex Tokenizer?

Сообщение Anonymous »

Мой гибкий код:

Код: Выделить всё

%{
#include 
#include 
#include 
#include 
using namespace std;
vector tokens;
%}

%%
def     tokens.push_back("CREATE_FUNC");
int      tokens.push_back("INT");
string      tokens.push_back("STRING");
char      tokens.push_back("char");
ret     tokens.push_back("EXIT_CODE");
"("       tokens.push_back("OPEN_PARA");
")"       tokens.push_back("CLOSE_PARA");
end     return 0;
[ \t\r\n\f]+
.
%%

int yywrap(){
return 0;
}
int main(int argc, char** argv){
if (argv[1] == NULL){
return 1;
}
FILE* ptr = fopen(argv[1], "r");
yyin = ptr;
yylex();
fclose(ptr);
}
Здесь у меня есть код Flex, который возвращает определенные токены в вектор C++. Я хочу, чтобы он также отодвинул обратно другие токены, которые не совпадают и не являются ни одним из них, «[ \t\r\n\f]+». Как мне этого добиться?

Подробнее здесь: https://stackoverflow.com/questions/797 ... to-the-tok

Вернуться в «C++»