您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ yyrestart函数代码示例

51自学网 2021-06-03 11:55:14
  C++
这篇教程C++ yyrestart函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中yyrestart函数的典型用法代码示例。如果您正苦于以下问题:C++ yyrestart函数的具体用法?C++ yyrestart怎么用?C++ yyrestart使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了yyrestart函数的26个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: main

PUBLIC int main(int ac, char **av){     int i, n_files;     char **files;     argc = ac; argv = av;     while (--argc > 0 && (*++argv)[0] == '-')          do_flags(*argv);     files = argv;     n_files = argc;     if (debflag('v')) {	  fprintf(errout, "%s/n%s/n%s/n", 		  fuzz_banner, fuzz_rcsid, fuzz_copyright);	  fflush(errout);     }     debugging = debflag('p');     init_sym();     init_type();     init_dict();     open_prelude();     read_a_file();     if (dflag) {	  check_file();	  clear_temp((univ) NULL);     }     debugging = TRUE;     if (n_files == 0) {	  /* Finished prelude, no args: read stdin */	  file_name = "standard input";	  yyrestart(stdin);	  read_a_file();     }     else {	  for (i = 0; i < n_files; i++) {	       reopen_input(files[i]);	       yyrestart(yyin);	       read_a_file();	  }     }     if (dflag) {	  check_file();	  clear_temp((univ) NULL);     }#ifdef DEBUG     if (debflag('h'))	  dump_hash();#endif     return (n_errors > 0 ? 1 : 0);}
开发者ID:cherry-wb,项目名称:Hot-Fuzz,代码行数:55,


示例2: readFile

void readFile(Register reg, char* fileName){    if ((yyin = fopen(fileName, "r" )) == NULL) {	yyrestart(stdin);	makeNull(reg);    }    read(reg);        yyrestart(stdin);}
开发者ID:jarvinet,项目名称:scheme,代码行数:12,


示例3: ScannerRestart

void ScannerRestart(FILE* fp){	if(fp==NULL)	{    	if ( yyin != stdin )		{			fclose( yyin );			yyrestart( stdin );		}		return;	}	yyrestart(fp);}
开发者ID:localvar,项目名称:backup,代码行数:13,


示例4: main

/*  * ===  FUNCTION  ====================================================================== *         Name:  main *  Description:  this is the main method for the complier, *                for now it is used for lyntax, and there *                may have a tree method under this. * ===================================================================================== */int main(int argc, char** argv){	if(argc <= 1)		return 1;	FILE* f = fopen(argv[1], "r");	if (!f){		perror(argv[1]);		return 1; 	}	yyrestart(f);	//extern FILE* yydebug; 	//yydebug = 1; 	yyparse();	//PrintTree();	SemanticAnalyze();	printTestError();		/* code for IR*/	optIRCode();	optIRCode2();	optIRCode3();	optIRCode4();	printCodeList();	printSCODE(argv[2]);	/* code end */	return 0;}
开发者ID:miketonson,项目名称:CMMCompiler,代码行数:35,


示例5: main

int main(int argc, char** argv) {    if(argc <= 1) return 1;    FILE *f = fopen(argv[1], "r");    if (!f) {        perror(argv[1]);        return 1;    }    FILE *fp = stdout;    if(argc == 3) {        fp = fopen(argv[2], "w");    }    yyrestart(f);#if YYDEBUG    yydebug = 1;#endif    yyparse();    if(!err) {#ifdef DEBUG        print_tree(root);#endif        main_parse(root);        //print_code(&code, stdout);        init_mips(fp);        gen_mips(&code, fp);    }    return 0;}
开发者ID:ArkBriar,项目名称:NJU-Compiler,代码行数:28,


示例6: main

int main(int argc, char* argv[]){	debug = 0;	int OpenFlag = 1;	DEBUG printf("before check debug/n");	if( argc>1 && strcmp( argv[1], "-debug")==0)	{		debug = 1;		OpenFlag = 2;	}	FILE *f;	if(argc == 1 || (argc == 2 && debug) )	{		DEBUG printf("before CreatNonTreeNode guard/n");		guard = CreatNonTreeNode("guard");		f = fopen("./example2.txt","r");		root = NULL;		assert(f!=NULL);		yyrestart(f);		//yylex();		yyparse();		//TravelTree(root, 0);		init();		analysis(root);		fclose(f);	}	return 0;	};
开发者ID:penguiner,项目名称:compiler,代码行数:29,


示例7: block

void ESDLcompiler::Process(){    CriticalBlock block(m_critSect);    yyInitESDLGlobals(this);    Owned<IException> parseException;    yyrestart (yyin);    try    {        yyparse();    }    catch(IException* e)    {        parseException.setown(e);    }    if (nCommentStartLine > -1)    {        char tempBuf[256];        sprintf(tempBuf, "The comment that started at line %d is not ended yet", nCommentStartLine);        yyerror(tempBuf);    }    if(!parseException)        write_esxdl();    fclose(yyin);    if (gOutfile > 0)        close (gOutfile);    yyCleanupESDLGlobals();    yylex_destroy();    if(parseException)        throw parseException.getLink();}
开发者ID:miguelvazq,项目名称:HPCC-Platform,代码行数:34,


示例8: __Interpreter_new

static Interpreter __Interpreter_new (Value filePath) {	Interpreter node = struct_new(Interpreter);	InitFunc func = NULL;	node->filePath = filePath;	at_currentInterpreter = node;	yylineno = 1;	if (filePath) {		if (func = LIB_getInitFunc(filePath->u.string)) {			node->result = func();			return node;		}		yyin = fopen(filePath->u.string, "rt");		if (!yyin) {			perror(filePath->u.string);			return NULL;		}		yyrestart(yyin);		yyparse();		fclose(yyin);	} else {		//yyin = stdin;		printf("Interpreter._new: yyparse/n");		//yyrestart(yyin);		yyparse();		printf("Interpreter._new: yyparse end/n");	}	node->result = Procedure_eval(node->proc, node->proc->exp);	return node;}
开发者ID:7hens,项目名称:yas,代码行数:29,


示例9: parse_input

intparse_input(FILE* f){  parse_init();  yyrestart(f);  return yyparse();}
开发者ID:hsk,项目名称:docs,代码行数:7,


示例10: file

void Ventana_Principal::AnalisisJSON(){    Pestana *actual = (Pestana*)ui->tabWidget->currentWidget();    if(actual != NULL){        QFile file("temp.txt"); //SE CREA UN ARCHIVO TEMPORAL PARA COMPILARLO        if ( file.open( file.WriteOnly ) ) { //BUFFER PARA EL TEXTO QUE SE DESEA COMPILAR            QTextStream stream1( &file );            stream1 << actual->enviar_texto();        }        const char* x = "temp.txt";        FILE* input = fopen(x, "r" );        errores_json->ven()->clear();        SetVentanita_json(errores_json->ven());        setFila();        setColumna();        setEdit(actual->textedit());        yyrestart(input);//SE PASA LA CADENA DE ENTRADA A FLEX        yyparse();//SE INICIA LA COMPILACION        ArbolJ *nuevo = setArbolito();        if(nuevo != NULL && correctojson() != 1){            //nuevo->Dibujar();        }    }}
开发者ID:jerduar,项目名称:Compi2,代码行数:28,


示例11: main

int main(int argc, char** argv) {    if (argc <= 2) return 1;    FILE *fin = fopen(argv[1], "r");    if (!fin) {    	perror(argv[1]);    	return 1;    }        FILE *fout = fopen(argv[2], "w");    if (!fout) {    	perror(argv[2]);    	return 1;    }        yyrestart(fin);    yyparse();    if (syntaxError) return 0;   // printTree(root);    checkSemantic(root);    if (semanticError) return 0;    generateIR(root);	generateMIPS(icsHead, fout);	fclose(fout);    return 0;}
开发者ID:kidxin,项目名称:Denovo,代码行数:25,


示例12: test_main

/*----------------------------------------------- | test_main +---------------------------------------------*/static int test_main(int argc, char **argv){   int i;    if(argc < 2)    {   /* we'll take input from stdin */        currfilename= "(stdin)";	yylineno= 1;	yylex();    }    else    {   for(i=1; i<argc; i++)        {   FILE *f= fopen(argv[i], "r");	    if(!f)	    {   perror(argv[i]);	        return 1;            }	    currfilename= argv[i];	    yyrestart(f);	    yylineno= 1;	    yylex();	    fclose(f);	}    }	    /*    printtabs();    */    return 0;}
开发者ID:ellerycoleman,项目名称:code_samples,代码行数:32,


示例13: read

void read(Register to){    yyparse();    yyrestart(stdin);    copyReg(to, regSimple);}
开发者ID:jarvinet,项目名称:scheme,代码行数:8,


示例14: loadFile

Object loadFile(char* fileName){    if ((yyin = fopen(fileName, "r" )) == NULL) {	yyrestart(stdin);	return makeNull();    }    while (1) {	setReg(regExp, read());	if (isEOF(getReg(regExp)))	    break;	eval();    }        yyrestart(stdin);    return makeSymbol("ok");}
开发者ID:jarvinet,项目名称:scheme,代码行数:18,


示例15: tree_insert_importDefinition

int tree_insert_importDefinition(struct tree **t){	//t = importDefinition, so get the ident subtree	struct tree *t_sub = NULL;	tree_get_subtree("ident", (*t), &t_sub);	if(t_sub == NULL)	{		return(1); //failure	}	//Get symbol pointer to variable name	//TODO: need to use more generic getter	char * import_name = t_sub->kids[0]->leaf->text;	//Parse the import file	tree_init(); //inits YY_TREE	//open the file and store its reference in global variable yyin	tree_import_ident_to_path(import_name, &YY_FNAME);	//yyrestart for multiple file parsing	FILE *yyfile = fopen(YY_FNAME, "r");        yyrestart(yyfile); lineno = 1; colno = 1;        //instead of - yyin = fopen(YY_FNAME,"r");	if (yyin == NULL) 	{		fprintf(stderr, "ERROR: import: Cannot open '%s'. ",/								YY_FNAME);		#ifdef DEBUG_TREE		fprintf(stderr, "Continuing anyway.../n");		#else		fprintf(stderr, "Cannot continue./n");		exit(ERROR_SEMANTIC);		#endif	}	else	{		//print the name of the file		printf("%s/n", YY_FNAME);		//parse import file		yyparse();				//delete the importDefinition subtree...		tree_del((*t));		//...and replace it with the newly parsed YY_TREE		//TODO: do we really want to replace with a as3CompilationUnit		// subtree, or it's children? Leaving for now.		(*t) = YY_TREE;	}	return(0); //success}
开发者ID:engrnasirkhan,项目名称:UofI,代码行数:55,


示例16: parse

void parse(FILE *fp){    init_symbol_table(&symbol_table);    symbol_table_enter_next_scope(symbol_table);    init_dll(&call_patch_list);    init_dll(&var_patch_list);    yyrestart(fp);    yyparse();}
开发者ID:Alfandorachk,项目名称:Tetra,代码行数:11,


示例17: main

int main(int argc, char** argv) {  FILE *file;  filename = argv[1];  file = fopen(argv[1], "r");  if(file) {    yyrestart(file);    yyparse();    check_prog();    gen_prog("a.out", "a.out.defs");  } else fprintf(stderr, "Source file does not exist/n");} 
开发者ID:flaviocdc,项目名称:monga,代码行数:11,


示例18: main

int main(int argc, char** argv){	if (argc <= 1) return 1;	FILE *f = fopen(argv[1], "r");	if (!f) {		perror(argv[1]);		return 1;			}	yyrestart(f);	yyparse();	return 0;}
开发者ID:pysherlock,项目名称:compiler,代码行数:12,


示例19: node_parse_input

intnode_parse_input(parser_state* p, FILE* f, const char* fname){  int n;  /* yydebug = 1; */  yyrestart(f);  n = yyparse(p);  if (n == 0 && p->nerr == 0) {    return 0;  }  return 1;}
开发者ID:0x00evil,项目名称:streem,代码行数:13,


示例20: main

int main(int argc, char** argv){    FILE *fp;    int i;        for(i=1;i < argc;i++)    {		if (argc > 1){			fp = fopen(argv[i], "r");			yyrestart(fp);			yylex();		}		else printf("please enter a file in the argument..../n USAGE :>> ./algolLexer test");	}    return 0;}
开发者ID:anirudhhkumarr,项目名称:algol_compiler,代码行数:16,


示例21: ss_parse_file

int ss_parse_file( ss_state* state, const char* src, FILE* file ){  bool is_close_file = false;  if ( null == file ){    file = fopen( src, "rb" );    if ( null == file ){      SS_PUTS_ERRCODE( errno );      SS_PUTS_ERR( "fopen error %s", src );      return 1;    }    is_close_file = true;  }    state->src = src;  state->line = 1;  yyrestart( file );  int result = yyparse( state );  if ( is_close_file ) fclose( file );  return ( ( 0 == result ) && ( 0 == state->err ) );}
开发者ID:liveralmask,项目名称:clay,代码行数:19,


示例22: StartParser

// start pasring fnParseFile file (may include mesh,skeleton,animset,...)BOOL StartParser(CTString fnParseFile){  CTFileName fnFull;  fnFull = _fnmApplicationPath + fnParseFile;  yyin = NULL;  astrText.PopAll();  astrText.Clear();  // initialize pre-parsing variables  yyin = fopen(fnFull, "r");  // reset include depth ptr  include_stack_ptr = 0;  strCurentFileName = fnFull;  _yy_iIndex = 0;  _yy_jIndex = 0;  _yy_iLine = 1;  // load data  try  {    if (yyin==NULL) {      ThrowF_t("Cannot open file '%s'!", (const char*)fnParseFile );    }    yyrestart(yyin);    yyparse();     fclose(yyin);  }  // if an error in parsing occured  catch(char *strError)  {    WarningMessage(strError);    // AfxMessageBox(strError);    theApp.ErrorMessage(strError);    if(yyin!=NULL) fclose(yyin);    return FALSE;  }return TRUE;}
开发者ID:AdamFlores,项目名称:Serious-Engine,代码行数:42,


示例23: yyrestart

intParser::parse(   const std::string& filename,   FILE* fstream,   const boost::shared_ptr<Database>& database){   d_errors = 0;   d_warnings = 0;   // Find the path in the filename, if one exists   std::string::size_type slash_pos = filename.find_last_of('/');   if (slash_pos == std::string::npos) {      d_pathname = "";   } else {      d_pathname = filename.substr(0, slash_pos + 1);   }   ParseData pd;   pd.d_filename = filename;   pd.d_fstream = fstream;   pd.d_linenumber = 1;   pd.d_cursor = 1;   pd.d_nextcursor = 1;   d_parse_stack.clear();   d_parse_stack.push_front(pd);   d_scope_stack.clear();   d_scope_stack.push_front(database);   s_default_parser = this;   yyrestart(0);   if (yyparse() && (d_errors == 0)) {      error("Unexpected parse error");   }   s_default_parser = 0;   d_parse_stack.clear();   d_scope_stack.clear();   return d_errors;}
开发者ID:00liujj,项目名称:SAMRAI,代码行数:41,


示例24: TSDef_ConstructUnitFromFile

int TSDef_ConstructUnitFromFile (                                 char*                        file,                                 char*                        name,                                 struct tsdef_unit*           unit,                                 struct tsdef_def_error_list* errors                                ){    int error;    yyin = fopen(file, "rt");    if(yyin == NULL)        return TSDEF_ERROR_FILE_OPEN;    yyrestart(yyin);    error = ParseInput(name, unit, errors);    fclose(yyin);    return error;}
开发者ID:agottem,项目名称:trigger_script,代码行数:21,


示例25: IntrHandler

voidIntrHandler(){    extern jmp_buf env;#if defined(BSD) && BSD >= 199006    extern FILE *yyin;		/* scanner input file */    extern void yyrestart();	/* routine to restart scanner after interrupt */#endif    SendRequest_close();    ListHost_close();    if (filePtr != NULL && filePtr != stdout) {	fclose(filePtr);	filePtr = NULL;    }    printf("/n");#if defined(BSD) && BSD >= 199006    yyrestart(yyin);#endif    longjmp(env, 1);}
开发者ID:LambdaCalculus379,项目名称:SLS-1.02,代码行数:21,


示例26: main

int main(int argc, char ** argv){    if (argc <= 1) return 1;    int i;    FILE* f;    for(i = 1; i < argc; i++)    {        f = fopen(argv[i], "r");        if(!f)        {            perror(argv[i]);            return 1;        }        yylineno = 1;        yyrestart(f);//    yydebug = 1;        yyparse();    }    return 0;}
开发者ID:angelhunt,项目名称:CCLAB,代码行数:21,



注:本文中的yyrestart函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ yystrlen函数代码示例
C++ yyprintf函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。