static void procOptions( // PROCESS AN OPTIONS LINE OPT_STORAGE *data, // - options data const char *str ) // - scan position in command line { int c; // - next character char const *fnm; // - scanned @ name char *env; // - environment name size_t len; // - length of file name if( indirectionLevel >= MAX_INDIRECTION ) { BadCmdLine( ERR_MAX_CMD_INDIRECTION ); } else if( str != NULL ) { ++indirectionLevel; CtxSetSwitchAddr( str ); CmdScanInit( str ); for(;;) { c = CmdScanWhiteSpace(); if( c == '\0' ) break; CmdScanSwitchBegin(); CmdLnCtxSwitch( CmdScanAddr() - 1 ); if( c == '-' || c == SwitchChar ) { if( OPT_PROCESS( data ) ) { BadCmdLine( ERR_INVALID_OPTION ); } } else if( c == '@' ) { CmdScanWhiteSpace(); CmdScanUngetChar(); len = CmdScanFilename( &fnm ); env = get_env( fnm, len ); if( NULL == env ) { if( openCmdFile( fnm, len ) ) { CmdLnCtxPushCmdFile( SrcFileCurrent() ); processCmdFile( data ); CmdLnCtxPop(); } else { CmdLnCtxPushEnv( fnm ); BadCmdLine( ERR_BAD_CMD_INDIRECTION ); CmdLnCtxPop(); } } else { CmdLnCtxPushEnv( fnm ); procOptions( data, env ); CmdLnCtxPop(); } } else { CmdScanUngetChar(); scanInputFile(); } } --indirectionLevel; } }
int main(int argc, char **argv) { char input_filename[NAMELENGTH+1]; if(argc > 1) { sprintf(input_filename, "%s", argv[1]); scanInputFile(input_filename); readNodeSection(input_filename); readEdgeSection(input_filename); determineNumberOfSelfLoops(); determineReciprocityByDyadMethod(sourcenodeid, targetnodeid, numberofedges); } else printf("Error: No file has been specified\n"); return 0; }
int main(int argc, char **argv) { char input_filename[NAMELENGTH+1]; if(argc > 1) { sprintf(input_filename, "%s", argv[1]); scanInputFile(input_filename); readNodeSection(input_filename); readEdgeSection(input_filename); determineNumberOfSelfLoops(); constructAdjacencyMatrix(); eliminateSelfLoops(adjacencymatrix); determineNodeOutDegree(adjacencymatrix); determineNodeInDegree(adjacencymatrix); determineTransitivityByAdjacency(adjacencymatrix); } else printf("Error: No file has been specified\n"); return 0; }