大家好我想尝试使用fork()和多维数组进行练习。
所以我试图告诉我的程序通过一个3D数组,我在特定位置分配了一个特定的数字,并在整个数组中搜索该特定数字,并将它返回给它找到它的位置。
现在我想使用fork()只是为了练习。编译器给了我一堆与数组本身和fork()相关的错误 这就是我到目前为止所得到的:
int i,j,k;
int this[100][100][100];
int charlie; //charlie is what i called the result of the a iteration
this[30][2][4]=23;
this[20][1][3]=23;
this[80][19][90]=23;
void ChildProcess()
{
printf("child\n");
for (i=50;i<75;i++)
{
for(j=50;j<75;j++)
{
for(k=50;k<75;k++)
{
charlie=this[i][j][k];
if(charlie==23)
{
printf("i=%d,j=%d,k=%d",i,j,k);
}
}
}
}
}
void ParentProcess()
{
printf("parent\n");
for (i=0;i<50;i++)
{
for(j=0;j<50;j++)
{
for(k=0;k<50;k++)
{
charlie=this[i][j][k];
if(charlie==23)
{
printf("i=%d,j=%d,k=%d",i,j,k);
}
}
}
}
}
void ChildProcess()
{
printf("child2\n");
for (i=75;i<100;i++)
{
for(j=75;j<100;j++)
{
for(k=75;k<100;k++)
{
charlie=this[i][j][k];
if(charlie==23)
{
printf("i=%d,j=%d,k=%d",i,j,k);
}
}
}
}
}
int main()
{
int pid=fork();
printf ("this is the pid %d\n",pid);
if(pid!=0)
{
ParentProcess();
}
else
{
ChildProcess();
}
int pid2=fork();
if (pid==0)
{
ChildProcess2();
}
}
它给我的一个错误是: s.c:7:1:警告:数据定义没有类型或存储类[默认启用] [30] [2] [4] = 23;
和
s.c:5:5:注意:之前的'this'声明就在这里[100] [100] [100];
这两个错误不断弹出。 说实话,我不确定它是什么意思,因为我没有收回它或smt