another newbie question!!
Sarkar
sanju.mathew.... at gmail.com
Thu Sep 13 02:27:16 UTC 2007
i went thru the earlier post on tryin to run c++ programs using
ragel..i tried it..
/ragel$ ragel -C prog.rl -o prog.rlo
/ragel$ rlgen prog.rlo -l -o prog.cpp
/ragel$ g++ prog.cpp -o prog
/ragel$ ./prog input.txt
the program i ran was
#include <string.h>
#include <stdio.h>
%%{
machine foo;
main := ('foo'|'bar') @{res = 1; };
}%%
%% write data;
int main( int argc, char **argv )
{
int cs, res = 0;
if ( argc > 0 ) {
char *p = argv[1];
char *pe = p + strlen(p) + 1;
%% write init;
%% write exec;
}
printf("result = %i\n", res );
return 0;
}
the input text file is gave was 'bar bar bar'
i expect the output should have been 'result = 1'
but the output always came out as 'result = 0'
when i initialised res=1 the output came out as 'result = 1'
could someone please help me understand what the program is all about
and whether the output i got is valid and why??!
Cheers!
More information about the ragel-users
mailing list