请高手帮忙改下a function-definition is not allowed here before '{' token
#include <iostream>
using namespace std;
const int maxrow=24,maxlist=80;
void initialize(char virtual_life[][maxlist],int maxrow);
void evolution(char life_evolve[][maxlist]);
void display(char creature[][maxlist]);
int main()
{
char life[maxrow][maxlist],ans;
initialize(life,maxrow);
display(life);
cin>>ans;
if (ans==' ')
{
do
{
cout<<"The virtual life programe is displayed as follows:"<<endl;
evolution(life);
display(life);
cin>>ans;
} while(ans==' ');
return 0;
}
void initialize(char virtual_life[][maxlist],int maxrow) // 矩阵初始化。
{
for(int i=0;i<=(maxrow-1);i++)
{
for(int j=0;j<=79;j++)
{
virtual_life[i][j]=' ';
}
}
for(int m=0;m<=9;m++)
{
for(int n=0;n<=29;n++)
{
virtual_life[m][n]='X';
}
}
}
void evolution(char life_evolve[][maxlist]) // 矩阵中的每个字符按照规则进行改变。由于担心矩阵值在改变时会改变矩阵占用内存空间外的内存变
{
int n=0,space=0,k=0,creature_evlve[][maxlist]; //量,所以分了9种情况分别处理来避免这种可能的情况发生。
for(int i=0;i<=79;i++)
{
for(int j=0;j<=23;j++)
{
if ((i==0)&&(j==0))
{
if (life_evolve[i][j]=='X')
{
if (life_evolve[i][j+1]=='X')
n+=1;
if (life_evolve[i+1][j]=='X')
n+=1;
if (life_evolve[i+1][j+1]=='X')
n+=1;
if ((n==3)&&(n<=1))
ceature_evolve[i][j]==' ';
n=0;
}
else
{
if (life_evolve[i][j+1]==' ')
space+=1;
if (life_evolve[i+1][j]==' ')
space+=1;
if (life_evolve[i+1][j+1]==' ')
space+=1;
if(space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((i==0)&&(j>0)&&(j<79))
{
if (life_evolve[i][j]=='X')
{
if(life_evolve[i][j-1]=='X')
n+=1;
if(life_evolve[i][j+1]=='X')
n+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i+1][k]=='X')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if(life_evolve[i][j-1]==' ')
space+=1;
if(life_evolve[i][j+1]==' ')
space+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i+1][k]==' ')
space+=1;
}
if (space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((i==0)&&(j==79))
{
if (life_evolve[i][j]=='X')
{
if (life_evolve[i][j-1]=='X')
n+=1;
if (life_evolve[i+1][j]=='X')
n+=1;
if (life_evolve[i+1][j-1]=='X')
n+=1;
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if (life_evolve[i][j-1]==' ')
space+=1;
if (life_evolve[i+1][j]==' ')
space+=1;
if (life_evolve[i+1][j-1]==' ')
space+=1;
if(space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((j==79)&&(i>0)&&(i<23))
{
if (life_evolve[i][j]=='X')
{
if(life_evolve[i-1][j]=='X')
n+=1;
if(life_evolve[i+1][j]=='X')
n+=1;
for(k=i-1;k<=i+1;k++)
{
if(life_evolve[k][j-1]=='X')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if(life_evolve[i-1][j]==' ')
space+=1;
if(life_evolve[i+1][j]==' ')
space+=1;
for(k=i-1;k<=i+1;k++)
{
if(life_evolve[i+1][k]==' ')
space+=1;
}
if (space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((i==23)&&(j==79))
{
if (life_evolve[i][j]=='X')
{
if (life_evolve[i][j-1]=='X')
n+=1;
if (life_evolve[i-1][j]=='X')
n+=1;
if (life_evolve[i-1][j-1]=='X')
n+=1;
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if (life_evolve[i][j-1]==' ')
space+=1;
if (life_evolve[i-1][j]==' ')
space+=1;
if (life_evolve[i-1][j-1]==' ')
space+=1;
if(space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((i==23)&&(j>0)&&(i<79))
{
if (life_evolve[i][j]=='X')
{
if(life_evolve[i][j-1]=='X')
n+=1;
if(life_evolve[i][j+1]=='X')
n+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i-1][k]=='X')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if(life_evolve[i][j-1]==' ')
space+=1;
if(life_evolve[i][j+1]==' ')
space+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i-1][k]==' ')
space+=1;
}
if (space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((i==23)&&(j==0))
{
if (life_evolve[i][j]=='X')
{
if (life_evolve[i][j+1]=='X')
n+=1;
if (life_evolve[i-1][j]=='X')
n+=1;
if (life_evolve[i-1][j+1]=='X')
n+=1;
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if (life_evolve[i][j+1]==' ')
space+=1;
if (life_evolve[i-1][j]==' ')
space+=1;
if (life_evolve[i-1][j+1]==' ')
space+=1;
if(space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if ((j==0)&&(i>0)&&(i<23))
{
if (life_evolve[i][j]=='X')
{
if(life_evolve[i-1][j]=='X')
n+=1;
if(life_evolve[i+1][j]=='X')
n+=1;
for(k=i-1;k<=i+1;k++)
{
if(life_evolve[k][j+1]=='X')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if(life_evolve[i-1][j]==' ')
space+=1;
if(life_evolve[i+1][j]==' ')
space+=1;
for(k=i-1;k<=i+1;k++)
{
if(life_evolve[k][j+1]==' ')
space+=1;
}
if (space==3)
creature_evolve[i][j]=='X';
space=0;
}
}
if((i!=0)&&(i!=23)&&(j!=0)&&(j!=79))
{
if (life_evolve[i][j]=='X')
{
if(life_evolve[i][j-1]=='X')
n+=1;
if(life_evolve[i][j+1]=='X')
n+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i-1][k]=='X')
n+=1;
if(life_evolve[i+1][k]=='X')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]==' ';
n=0;
}
else
{
if(life_evolve[i][j-1]==' ')
n+=1;
if(life_evolve[i][j+1]==' ')
n+=1;
for(k=j-1;k<=j+1;k++)
{
if(life_evolve[i-1][k]==' ')
n+=1;
if(life_evolve[i+1][k]==' ')
n+=1;
}
if ((n==3)&&(n<=1))
creature_evolve[i][j]=='X';
space=0;
}
}
}
}
for(int i=0;i<=(maxrow-1);i++)
{
for(int j=0;j<=79;j++)
{
life_evolve[i][j]=creature_evolve[i][j];
}
}
}
void display(char creature[][maxlist]) //在屏幕显示24*80的矩阵。
{
for(int i=0;i<=23;i++)
{
for(int j=0;j<=79;j++)
{
cout<<creature[i][j];
}
cout<<endl;
}
}
}
非常感谢!!!!!
[解决办法]
几点错误:函数写到main()函数名里面去了,数组名写错,==与=用错。。
#include <iostream>using namespace std;const int maxrow=24,maxlist=80;void initialize(char virtual_life[][maxlist],int maxrow);void evolution(char life_evolve[][maxlist]);void display(char creature[][maxlist]);int main(){ char life[maxrow][maxlist],ans; initialize(life,maxrow); display(life); cin>>ans; if (ans==' ') { do { cout<<"The virtual life programe is displayed as follows:"<<endl; evolution(life); display(life); cin>>ans; } while(ans==' '); } return 0;}void initialize(char virtual_life[][maxlist],int maxrow) // 矩阵初始化。{ for(int i=0;i<=(maxrow-1);i++) { for(int j=0;j<=79;j++) { virtual_life[i][j]=' '; } } for(int m=0;m<=9;m++) { for(int n=0;n<=29;n++) { virtual_life[m][n]='X'; } }}void evolution(char life_evolve[][maxlist]) // 矩阵中的每个字符按照规则进行改变。由于担心矩阵值在改变时会改变矩阵占用内存空间外的内存变{ int n=0,space=0,k=0,creature_evlve[maxrow][maxlist]; //量,所以分了9种情况分别处理来避免这种可能的情况发生。 for(int i=0;i<=79;i++) { for(int j=0;j<=23;j++) { if ((i==0)&&(j==0)) { if (life_evolve[i][j]=='X') { if (life_evolve[i][j+1]=='X') n+=1; if (life_evolve[i+1][j]=='X') n+=1; if (life_evolve[i+1][j+1]=='X') n+=1; if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if (life_evolve[i][j+1]==' ') space+=1; if (life_evolve[i+1][j]==' ') space+=1; if (life_evolve[i+1][j+1]==' ') space+=1; if(space==3) creature_evlve[i][j]='X'; space=0; } } if ((i==0)&&(j>0)&&(j<79)) { if (life_evolve[i][j]=='X') { if(life_evolve[i][j-1]=='X') n+=1; if(life_evolve[i][j+1]=='X') n+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i+1][k]=='X') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if(life_evolve[i][j-1]==' ') space+=1; if(life_evolve[i][j+1]==' ') space+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i+1][k]==' ') space+=1; } if (space==3) creature_evlve[i][j]='X'; space=0; } } if ((i==0)&&(j==79)) { if (life_evolve[i][j]=='X') { if (life_evolve[i][j-1]=='X') n+=1; if (life_evolve[i+1][j]=='X') n+=1; if (life_evolve[i+1][j-1]=='X') n+=1; if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if (life_evolve[i][j-1]==' ') space+=1; if (life_evolve[i+1][j]==' ') space+=1; if (life_evolve[i+1][j-1]==' ') space+=1; if(space==3) creature_evlve[i][j]='X'; space=0; } } if ((j==79)&&(i>0)&&(i<23)) { if (life_evolve[i][j]=='X') { if(life_evolve[i-1][j]=='X') n+=1; if(life_evolve[i+1][j]=='X') n+=1; for(k=i-1;k<=i+1;k++) { if(life_evolve[k][j-1]=='X') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if(life_evolve[i-1][j]==' ') space+=1; if(life_evolve[i+1][j]==' ') space+=1; for(k=i-1;k<=i+1;k++) { if(life_evolve[i+1][k]==' ') space+=1; } if (space==3) creature_evlve[i][j]='X'; space=0; } } if ((i==23)&&(j==79)) { if (life_evolve[i][j]=='X') { if (life_evolve[i][j-1]=='X') n+=1; if (life_evolve[i-1][j]=='X') n+=1; if (life_evolve[i-1][j-1]=='X') n+=1; if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if (life_evolve[i][j-1]==' ') space+=1; if (life_evolve[i-1][j]==' ') space+=1; if (life_evolve[i-1][j-1]==' ') space+=1; if(space==3) creature_evlve[i][j]='X'; space=0; } } if ((i==23)&&(j>0)&&(i<79)) { if (life_evolve[i][j]=='X') { if(life_evolve[i][j-1]=='X') n+=1; if(life_evolve[i][j+1]=='X') n+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i-1][k]=='X') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if(life_evolve[i][j-1]==' ') space+=1; if(life_evolve[i][j+1]==' ') space+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i-1][k]==' ') space+=1; } if (space==3) creature_evlve[i][j]='X'; space=0; } } if ((i==23)&&(j==0)) { if (life_evolve[i][j]=='X') { if (life_evolve[i][j+1]=='X') n+=1; if (life_evolve[i-1][j]=='X') n+=1; if (life_evolve[i-1][j+1]=='X') n+=1; if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if (life_evolve[i][j+1]==' ') space+=1; if (life_evolve[i-1][j]==' ') space+=1; if (life_evolve[i-1][j+1]==' ') space+=1; if(space==3) creature_evlve[i][j]='X'; space=0; } } if ((j==0)&&(i>0)&&(i<23)) { if (life_evolve[i][j]=='X') { if(life_evolve[i-1][j]=='X') n+=1; if(life_evolve[i+1][j]=='X') n+=1; for(k=i-1;k<=i+1;k++) { if(life_evolve[k][j+1]='X') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if(life_evolve[i-1][j]==' ') space+=1; if(life_evolve[i+1][j]==' ') space+=1; for(k=i-1;k<=i+1;k++) { if(life_evolve[k][j+1]==' ') space+=1; } if (space==3) creature_evlve[i][j]='X'; space=0; } } if((i!=0)&&(i!=23)&&(j!=0)&&(j!=79)) { if (life_evolve[i][j]=='X') { if(life_evolve[i][j-1]=='X') n+=1; if(life_evolve[i][j+1]=='X') n+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i-1][k]=='X') n+=1; if(life_evolve[i+1][k]=='X') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]=' '; n=0; } else { if(life_evolve[i][j-1]==' ') n+=1; if(life_evolve[i][j+1]==' ') n+=1; for(k=j-1;k<=j+1;k++) { if(life_evolve[i-1][k]==' ') n+=1; if(life_evolve[i+1][k]==' ') n+=1; } if ((n==3)&&(n<=1)) creature_evlve[i][j]='X'; space=0; } }}}for(int i=0;i<=(maxrow-1);i++){ for(int j=0;j<=79;j++) { life_evolve[i][j]=creature_evlve[i][j]; }}}void display(char creature[][maxlist]) //在屏幕显示24*80的矩阵。{ for(int i=0;i<=23;i++) { for(int j=0;j<=79;j++) { cout<<creature[i][j]; } cout<<endl; }}
[解决办法]
妹子,说下什么叫conway的生命游戏吧。