|
Major Member
|
[C語言]小程式出錯,概念的問題--只要迴圈一多就容易出錯
大家晚安!
以下的程式碼只要main裡面的迴圈數一多,就會Access Violation
小弟因為不太熟悉C語言,麻煩各位先進幫忙找出問題給予指導。
先謝謝你們!
#define ChromosomeNumber 30
#define GeneNumber 10
int main()
{
int i;
int *CrossoverGene = malloc(sizeof(int)GeneNumber*ChromosomeNumber);
int *StartGene= malloc(sizeof(int)GeneNumber*ChromosomeNumber);
int *SelectGene= malloc(sizeof(int)GeneNumber);
for(i=0;i<5;i++)
{
Crossover(CrossoverGene, SelectGene, StartGene,ChromosomeNumber);
}
getchar();
return 0;
}
void Crossover(int *CrossoverGene, int *SelectGene, int *StartGene, int ChromosomeNumber)
{
for(count=0;count<GeneNumber;count++)
{
for(i=0;i<ChromosomeNumber;i++)
{
*(CrossoverGene+(count*ChromosomeNumber+i))=
StartGene[(SelectGene[count]*ChromosomeNumber+i)];
}
}
}
__________________
左邊的(@) (@) o(≧□≦)o
|