EFAULTEFAULT — Nieprawidłowy Adres
Do wywołania systemowego przekazano nieprawidłowy adres pamięci jako argument.
Co powoduje ten błąd
Argument wskaźnikowy wywołania systemowego wskazuje na pamięć poza dostępną przestrzenią adresową procesu. Typową przyczyną jest przekazanie wskaźnika NULL, niezainicjowanego wskaźnika lub wskaźnika do zwolnionej pamięci.
Jak to naprawić
Sprawdzaj wszystkie argumenty wskaźnikowe pod kątem NULL przed przekazaniem ich do wywołań systemowych. Upewnij się, że bufory są prawidłowo zaalokowane i nie zostały zwolnione. Używaj narzędzi do debugowania pamięci, takich jak Valgrind lub AddressSanitizer.
Powiązane kody błędów
ENOLINKENOLINK — Łącze zostało zerwane
Zdalny zasób podłączony przez sieciowy system plików jest niedostępny.
ECONNABORTEDECONNABORTED — Połączenie przerwane
Połączenie zostało przerwane lokalnie z powodu warunków programowych lub przekroczenia limitu czasu.
EINPROGRESSEINPROGRESS — Operacja w toku
Nieblokująca próba nawiązania połączenia została zainicjowana i jest nadal w toku.
ESTALEESTALE — Nieaktualny uchwyt pliku NFS
Uchwyt pliku odwołuje się do pliku, który został usunięty lub jest niedostępny na serwerze NFS.
ESPIPEESPIPE — Niedozwolone przesunięcie
Podjęto próbę operacji przesunięcia na deskryptorze pliku, który jej nie obsługuje.
ENOTBLKENOTBLK — Wymagane Urządzenie Blokowe
W miejscu, gdzie wymagane jest urządzenie blokowe, podano urządzenie nieblokowe.