我创建了一个名为 RNA_complement 的函数。它应该采用已经从输入文件流中读取的一行并将特定字母替换为新字母(因此称为补码)。完成后,它应该将结果输出到输出文件流(输出文件)。
问题是:它没有将结果输出到文件中,即使我已经为它编写了一个命令。为什么不通过?
该函数是在 int main 函数之外编写的,并且该函数在 main 函数中声明和初始化。
我遇到了其他错误,例如“从 char* 到 char 的无效转换”和“无法将字符串转换为 char”等。这令人沮丧
这是代码:
char RNA_complement(string line)
{
char mychar[50];
ofstream genesacidnew;
for (int i = 0; i < line.length(); i++)
{
line = mychar[i];
if (mychar[i] == 'A')
{
mychar[i]= 'Z';
}
genesacidnew << "Complement: " <<mychar <<endl;
}
}
然后我决定在这里初始化函数
genesacid.open("genes.txt");
if(!genesacid.is_open())
{
cerr <<"Error: File cannot be opened"<<endl;
return -1;
}
else
{
getline(genesacid, line1);
}
genesacid.close();
genesacidnew.open("genesoutput.txt");
if(!genesacidnew.is_open())
{
cerr <<"Error: File cannot be opened"<<endl;
return -1;
}
else
{
genesacidnew<<"Fragment 1: " <<line1 <<endl;
genesacidnew<<"Complement: "<<endl;
}
RNA_complement(line1); /*here*/
genesacidnew.close();