Следующий код будет ждать завершения дочернего процесса и затем печатать его код возврата.
int status;
wait(&status);
cout << "return code = " << WEXITSTATUS(status) << endl;
Почему нельзя сохранить код возврата просто в переменной int? Почему его нужно преобразовывать с помощью функции WEXITSTATUS? Что представляет собой значение непреобразованной переменной int?