Вам необходимо проверить значение errno
.Большинство библиотечных функций устанавливают для него определенный код ошибки, и вы можете найти его в errno.h
или использовать perror
или strerror
, чтобы получить читаемую пользователем версию.
Например:
#include <stdio.h>
#include <string.h>
#include <errno.h>
int main (void) {
FILE *fh = fopen ("junk", "w");
if (fh != NULL) {
if (fprintf (fh, "%s", "hello") < 0)
fprintf (stderr, "err=%d: %s\n", errno, strerror (errno));
fclose (fh);
}
return 0;
}