親からフォークされた子プロセスの終了ステータスにアクセスしようとしていますが、奇妙な答えが得られます。&status を指定するかステータスだけを指定するかによって、256 が返されることもあれば、負の値が返されることもあります。私は私が本当に近いことを知っています。EXIT_STATUSを取得する方法を誰かが少し助けてくれますか
これが私のコードです
pid_t pid;
int *status;
if((pid = fork()) < 0)
fprintf(stdout, "Error forking child process\n");
else if (pid == 0)
{
execvp(input[0], input);
fprintf(stdout, "Invalid process!!\n");
_exit(EXIT_FAILURE);
}
else
{
while (waitpid(-1, status, 0) != pid);
fprintf(stdout, "The status is %d\n", &status);
}