struct Patient_Record {
char name[20], doctorName[20], diagnosis[20];
int patientNumber, polyclinicNumber;
char branchName[20];
};
第一个文件
main(){
defter.file_to_array();
defter.print();
return EXIT_SUCCESS;
}
第二档
我有四个单独的文件,其中三个在这里。不需要它们。
void Dizi::file_to_array() {
ifstream file("database.txt");
std::string line;
while(std::getline(file,line)){//reading file line by line
std::istringstream ss(line);
std::string token;
std::getline(ss, token, '\t'); //parsing line strings into the variables of the structures
strncpy(k[kayitsayisi].name,token.c_str(), sizeof(token));
std::getline(ss, token, '\t');
strncpy(k[kayitsayisi].doctorName, token.c_str(), sizeof(token));
std::getline(ss, token, '\t');
strncpy(k[kayitsayisi].diagnosis, token.c_str(), sizeof(token));
std::getline(ss, token, '\t');
k[kayitsayisi].patientNumber = atoi(token.c_str());
std::getline(ss, token, '\t');
k[kayitsayisi].polyclinicNumber= atoi(token.c_str());
std::getline(ss, token, '\t');
strncpy(k[kayitsayisi].branchName,token.c_str(), sizeof(token));
kayitsayisi++;
}
}
void Dizi::print() {
for (int i = 0; i < kayitsayisi; i++){
cout << i + 1 << ". " <<(p+i)->name<<'\t'<<(p+i)->doctorName<<'\t'<<(p+i)->diagnosis<<'\t';
cout<<(p+i)->patientNumber<<'\t'<<(p+i)->polyclinicNumber<<'\t'<<(p+i)->branchName<<endl;
}
}
第三档
问题是我的代码在VS 2015,windows终端和ubuntu终端上工作。但它对克里昂不起作用。它成功编译,但之后没有任何反应。这是一个错误还是什么?