Ce n'est pas une bonne habitude de tester errno. Pour faire du code portable, il vaut mieux appeler perror (affiche la description de l'erreur) ou strerror (récupère la description de l'erreur), respectivement déclarées dans stdio.h et string.h. (perror utilise strerror qui utilise errno ...)