我的代码适用于终端但不适用于CLion

时间:2016-10-15 07:21:03

标签: c++ data-structures clion

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终端上工作。但它对克里昂不起作用。它成功编译,但之后没有任何反应。这是一个错误还是什么?

0 个答案:

没有答案