Czy standard POSIX lub inny standard C zapewnia sposób na odzyskanie ważnego komunikatu od numeru sygnału, w ten sam sposób, w jaki strerror()
umożliwia odzyskanie wiadomości od errno
? Biblioteka Gnu C ma numer strsignal()
, ale jeśli to możliwe, chciałbym coś przenośnego dla BSD i innych wariantów Uniksa.Jak uzyskać numer identyfikacyjny od czytelnego dla człowieka opisu?
Odpowiedz
Tak, co ciekawe, istnieje standardowy sposób na uzyskanie komunikatu smyczkowego z sygnału w POSIX. Jest to, całkiem przypadkowo, strsignal()
. Z POSIX.1-2008:
Funkcja strsignal() odwzorowuje numer sygnału w signum na ciąg znaków zdefiniowany przez implementację i zwraca wskaźnik do niego. Użyje tego samego zestawu komunikatów, co funkcja psignal().
Środowisko, które nie zapewnia tej funkcji, nie jest zgodne z POSIX. Chociaż jest stosunkowo nowy (numer 7 wydano w 2008 r.), Mam stronę podręcznika dla strsignal()
na Mac OS X, więc to dobry znak.
Zewnętrznie zdefiniowana tablica sys_siglist
zawiera opisy sygnałów dla każdego numeru sygnału i jest standardowym problemem w BSD.
#include <signal.h>
extern const char *const sys_siglist[];
+1 Nie standard per se, ale użyteczny i częściej spotykany. – pilcrow
- 1. Cron do czytelnego dla człowieka ciągu
- 2. Wyjście htop do pliku czytelnego dla człowieka
- 3. Konwertowanie pliku llvm .bc do pliku czytelnego dla człowieka .ll
- 4. Jak uzyskać numer identyfikacyjny ekran z klasy ekran
- 5. Object-c NSFilePosixPermissions do czytelnego dla człowieka NSString
- 6. Jak odczytać numer identyfikacyjny karty SD?
- 7. Android: Możliwe, że dostaniesz niestandardowy numer identyfikacyjny
- 8. Jak uzyskać numer wersji aplikacji od użytkownika?
- 9. Formatować datę względną do formatu czytelnego dla człowieka w systemie Android przy użyciu Androida DateUtils API
- 10. Jak wyświetlić czytelne dla człowieka "czas temu"
- 11. Konwertuj mikrosekundy na czas czytelny dla człowieka
- 12. Czy istnieje kanał identyfikacyjny?
- 13. PLCrashReporter: Tworzenie czytelnej dla człowieka ścieżki stosu
- 14. Jak uzyskać numer porządkowy elementu
- 15. Jak uzyskać numer wersji JavaFX?
- 16. Jak uzyskać numer bieżącej linii?
- 17. Jak uzyskać numer wersji F #?
- 18. Jak uzyskać numer wersji bash
- 19. Jak uzyskać indeks tablicy lub numer iteracji dla każdego iteratora?
- 20. Jak przekonwertować znacznik czasu unixa na czas czytelny dla człowieka?
- 21. Formatowanie daty na czytelny dla człowieka format
- 22. Reprezentacje czytelne dla człowieka w protobuf-net
- 23. Znajdowanie plików czytelnych dla człowieka na unixie
- 24. Jak sformatować dokumenty projektu CouchDB w czytelny dla człowieka sposób?
- 25. Serialize w czytelnym dla człowieka formacie tekstowym
- 26. kody błędów doładowania czytelny dla człowieka opis
- 27. Jak uzyskać numer/indeks elementu między rodzeństwem?
- 28. Uzyskaj numer miesiąca od nazwy miesiąca
- 29. Uzyskaj numer tygodnia od podanej daty
- 30. exif_read_data - Nieprawidłowy kod identyfikacyjny APP1 Exif
Dzięki: http://tinyurl.com/d4z9ev Strona podręcznika GNU, która mówi "Ta funkcja nie jest częścią żadnego standardu", oczywiście wymaga aktualizacji. –
@Norman: strona "man" wymagająca aktualizacji? Herezja! Twoje zdrowie. –