Как я могу убедиться, что канал закрыт, когда моя программа C остановлена SIGINT?
Вы можете использовать для обработки сигналов для этого:
#include <signal.h> void sigHandler(int sig) { // Respond to the signal here. } int main(..) { signal(SIGINT, &sigHandler); .. }