; break;
default:
strtoken = strtoken + ch;
ch = buffer[++lnscptr];
print(linecount,strtoken,strgrdline,"其他特殊符号");
maketl(linecount,strtoken,"其他特殊符号");
break;
}//switch
strgrdline++;
strtoken.delete(1,strtoken.length());
}//else
}//_while buffer[]!='/0'
}
/*scan:important arithmetic*/
linecount++;
} //_while getline
scanfile.close();
}
void scan::compress(char *zipfname)
{
ofstream compress(zipfname,ios::app);
for(int i=0; i<tokenlist->count; i++)
{
anode = (listnd)tokenlist->items[i];
if(anode->type=="预定义")
{
compress<<anode->words.c_str()<<endl;
}
else if(anode->type=="保留字")
{
compress<<anode->words.c_str();
compress<<" ";
}
else
{
compress<<anode->words.c_str();
}
}
compress.close();