我从我的编译器“分段错误:核心转储”收到此错误。我假设它来自我编写的函数,但不完全确定该函数有什么问题。
程序从输入文件中读取并在屏幕上输出结果(cout)。
string rna_complement(string line)
{
for(int i = 0; i < line.length(); i++)
{
switch (line[i])
{
case 'A': line[i] = 'U'; break;
case 'C': line[i] = 'G'; break;
case 'G': line[i] = 'C'; break;
case 'U': line[i] = 'A'; break;
}
}
cout <<"Complement: " <<line <<endl;
}
int main()
{
string line1, line2, line3, line4, line5, line6;
ifstream genesacid;
genesacid.open("genes.txt");
if(!genesacid.is_open())
{
cerr <<"Error: File cannot be opened"<<endl;
return 0;
}
else
{
getline(genesacid, line1);
getline(genesacid, line2);
getline(genesacid, line3);
getline(genesacid, line4);
getline(genesacid, line5);
getline(genesacid, line6);
}
cout << "Fragment 1: " <<line1 <<endl;
rna_complement(line1);
cout << "Fragment 2: " <<line2 <<endl;
genesacid.close();
return 0;
}
我不太擅长 C++,所以如果您看到的任何错误很明显,请注意这一点。我在慢慢学习!