gpt4 book ai didi

c++ - 混淆 "Access Violation "

转载 作者:行者123 更新时间:2023-11-28 08:10:21 27 4
gpt4 key购买 nike

我不明白这个案例,但这对我来说真的很重要,请帮助我...

void __fastcall TForm1::Button4Click(TObject *Sender)
{
String masuk, keluar, kosong;
int i, x, j, n = 0;

masuk = Edit2->Text;
keluar = masuk;
kosong = " ";
n = 0;
x = 0;

mulai:
i = 1;
j = 0;
j = j + n;
i = i + j;
if (masuk[i] == 'a')
{
keluar[i] = 't';
}
else if (masuk[i] == 't')
{
keluar[i] = 'a';
}
else if (masuk[i] == 'c')
{
keluar[i] = 'g';
}
else if (masuk[i] == 'g')
{
keluar[i] = 'c';
}
else
{
Application->MessageBoxA("Masukan Anda Salah", "Peringatan", MB_OK | MB_ICONWARNING);
keluar = kosong;
goto end;
}
n = n + 1;
if (i < 10)
goto mulai;
else
goto end;

end:
Memo1->Text = keluar;
}

如果我使 masukan 大于 10(i<10(默认值为 10)),则可以,但如果小于 10,则会产生消息异常 Class EAccessViolation..

最佳答案

在黑暗中拍摄,但我认为您实际尝试做的可能是这个。我假设您使用一个包含 10 个字符的字符串来表示基因组的一半,并且您正在生成另一个字符串对值。

void __fastcall TForm1::Button4Click(TObject *Sender)
{
String masuk, keluar;
masuk = Edit2->Text;
keluar = masuk;

char kosong = ' ';

for (int i=0; i < 10; i++)
{
switch(masuk[i]) {
case 'a':
keluar[i] = 't';
break;
case 't':
keluar[i] = 'a';
break;
case 'c':
keluar[i] = 'g';
break;
case 'g':
keluar[i] = 'c';
break;
default:
Application->MessageBoxA("Masukan Anda Salah", "Peringatan", MB_OK | MB_ICONWARNING);
keluar[i] = kosong;
break;
}
Memo1->Text = keluar;
}

关于c++ - 混淆 "Access Violation ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9319290/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com