最初に buf を配列に渡します。schArray[i][0] = buf;
たとえば、私はする必要があり buf
ますschArray
ABCDEFG to [0][0]
1234567 to [1][0]
しかし、私はこの結果を行うことはできません
私の結果の2行目は最初の行を置き換えます
Time 1: [0][0] = ABCDEFG
[1][0] = null
Time 2 :[0][0] = 1234567
[1][0] = 1234567
[0][0]を置き換えます
char ***schArray;
int q,k;
schArray = (char***)malloc(sizeof(char*)*1000);
for(q = 0; q < 1000; q++){
schArray[q] = (char**)malloc(sizeof(char)*100);
for(k = 0; k < 1000; k++){
schArray[q][k] = (char*)malloc(sizeof(char)*100);
}
}
while(strncmp(buf, KEYWORD_endP,KEYWORD_PS_SZ)!=0){
schArray[commandnum][0] = buf;
printf("%s\n",schArray[0][0]);
printf("%s\n",schArray[1][0]);
printf("%s\n",schArray[2][0]);
val=printCommand(buf);
printf("child: %d\n",val);
// printf("child:%d",val);
memset(buf, 0, 80);
write(cTop[i][1],&buf,80*sizeof(char));
read(pToc[i][0],&buf,80*sizeof(char));
commandnum++;
}
期待される出力
ABCDEFG
1234567
実際の出力
1234567
1234567