c++中debug error问题
先贴下程序源代码
string **split_p;//split_p是读文件之后的存放的值,split_p[i][j],j=0是value值,j=1是pixel值 split_p=new string*[split_num]; ifstream fin; fin.open("afterbtc.txt"); if(!fin) { cout<<"the afterbtc.txt in sort_block of Block has not open"<<endl; exit(1); } ofstream fout_sort("sortblock.txt"); int i=0;//i作为split_p里的数 int j=0;//j作为分割字符串里的数 string sortblock_str=""; char *strp; char strpp[100]; char *char_split; string string_split[2]; while(!fin.eof()) { //每次读取一行 getline(fin,sortblock_str); strp=strcpy(strpp,sortblock_str.c_str()); //分割字符串 char_split=strtok(strp,","); j=0; string_split[0]=" "; string_split[1]=" "; while(char_split!=NULL) { string_split[j]=string(char_split); char_split=strtok(NULL,","); j++; } split_p[i]=new string[2]; split_p[i][0]=string_split[0].c_str(); split_p[i][1]=string_split[1].c_str(); i++; } for(i=0;i<5;i++) { for(int j=0;j<2;j++) { cout<<split_p[i][j].c_str()<<endl; } } fout_sort.close (); fin.close(); for(i=0;i<split_num;i++) { delete [2]split_p[i]; split_p[i]=NULL; } delete [split_num]split_p; split_p=NULL; //delete strp; //delete char_split;