wait(null) and wait(&status) C language and Status

c, posix, status, unix, wait

Solution

If you call `wait(NULL)` (wait(2)), you only wait for any child to terminate. With `wait(&status)` you wait for a child to terminate but you want to know some information about it's termination.

You can know if the child terminate normally with `WIFEXITED(status)` for example.

`status` contains information about processes that you can check with some already defined MACRO.

Problem

What is the difference between `wait(null)` and `wait(&status)` in c system programming? And what is the content of the pointer status ?

Original source