for(int i=1;i<=30;i++) { char filename[10]; memset(filename,0,sizeof(filename)); sprintf(filename,"test%d.dat",i); fstream ff(filename,ios::in); //... ff.close();}不会陷入循环啊,是不是其它处理部分的问题