diff options
author | Manoj Srivastava <srivasta@golden-gryphon.com> | 2003-12-03 22:33:17 -0800 |
---|---|---|
committer | Manoj Srivastava <srivasta@golden-gryphon.com> | 2003-12-03 22:33:17 -0800 |
commit | c2b22e08bd48278f2cf125f054c9f6286e345ff0 (patch) | |
tree | 3c0ab722c83ef33913ad293af7d56ce2c4e1fcc9 /examples/manual/userinit.lex | |
parent | edc848712307fe5c881364e12e520e9fe58d9969 (diff) |
Imported Upstream version 2.5.31
Diffstat (limited to 'examples/manual/userinit.lex')
-rw-r--r-- | examples/manual/userinit.lex | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/manual/userinit.lex b/examples/manual/userinit.lex new file mode 100644 index 0000000..9a56471 --- /dev/null +++ b/examples/manual/userinit.lex @@ -0,0 +1,30 @@ +%{ +#define YY_USER_INIT open_input_file() + +extern FILE *yyin; + +void open_input_file(void) +{ + char *file_name,buffer[1024]; + + yyin = NULL; + + while(yyin == NULL){ + printf("Input file: "); + file_name = fgets(buffer,1024,stdin); + if(file_name){ + file_name[strlen(file_name)-1] = '\0'; + yyin = fopen(file_name,"r"); + if(yyin == NULL){ + printf("Unable to open \"%s\"\n",file_name); + } + } else { + printf("stdin\n"); + yyin = stdin; + break; + } + } +} + +%} +%% |