03. oktober 2006 - 22:53
Der er
4 kommentarer
flex og manual feed af data istedet for fil
Hej, Er der en som kender til brug af flex + cpp som kan hjælpe mig med hvordan jeg gør så jeg manualt kan give flex data istedet for at den SKAL læse det fra en fil det må da være muligt. Takker Kristian
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
03. oktober 2006 - 23:07
#1
Jeg har kun arbejdet lidt med flex, arbejdet lidt videre på et projekt. I dette projekt er der en en YY_INPUT macro som bliver kaldt for at hente mere indput. I mit projekt kalder den getc, men man kan let ændre den til at hente fra hukommelsen. Man kan dog, så vidt jeg kan se, ikke kalde en funktion for hver tegn der skal behandles.
03. oktober 2006 - 23:13
#2
Jeg har noget gammelt kode (9 aar) som indeholder foelgende: // no echo of unmatched characters #define ECHO /* no echo */ // pure parser #define YY_DECL extern "C" int cmd_lex YY_PROTO((YYSTYPE *yylvalp)) // buffer for lexical analysis #define buffer cmd_buffer YY_BUFFER_STATE buffer = NULL; %} %option prefix="cmd_" %option noyywrap D [0-9] L [A-Za-z$_] A [A-Za-z0-9$_] LX [A-Za-z$_\*\.?] AX [A-Za-z0-9$_\*\.?] %% {D}+ { yylvalp->str = new char[strlen(yytext)+1]; strcpy(yylvalp->str,yytext); return NUMBER; } \"(([^\"])|(\"\"))*\" { yylvalp->str = new char[strlen(yytext)+1]; strcpy(yylvalp->str,yytext); return QTEXT; } {LX}+{AX}* { yylvalp->str = new char[strlen(yytext)+1]; strcpy(yylvalp->str,yytext); if(cmd_exist_opt(yytext)) { return OPTION; } else { return NAME; } } "(" { return '('; } ")" { return ')'; } "=" { return '='; } ":" { return ':'; } "-" { return '-'; } "/" { return '/'; } "," { return ','; } "\0" { return EOF; } %% // store command-line-string for scanning void cmd_store_str(char *s) { if(buffer!=NULL) yy_delete_buffer(buffer); buffer = yy_scan_string(s); return; }
03. oktober 2006 - 23:18
#3
jeg kan ikke huske noget om koden men hvis cmd_store_str goer hvad jeg tror den goer saa smager det lidt af fugl
10. december 2006 - 00:11
#4
krismort ?
Kurser inden for grundlæggende programmering