The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

strerror (3)
  • strerror (3) ( Solaris man: Библиотечные вызовы )
  • strerror (3) ( FreeBSD man: Библиотечные вызовы )
  • >> strerror (3) ( Русские man: Библиотечные вызовы )
  • strerror (3) ( Linux man: Библиотечные вызовы )
  • strerror (3) ( POSIX man: Библиотечные вызовы )
  •  

    НАЗВАНИЕ

    strerror, strerror_r - возвращают строку, описывающую ошибку  

    СИНТАКСИС

    #include <string.h>
    
    char *strerror(int errnum);
    
    int strerror_r(int errnum, char *buf, size_t n);
     

    ОПИСАНИЕ

    Функция strerror() возвращает строку, описывающую код ошибки, переданный в аргументе errnum, возможно с учетом категории LC_MESSAGES текущей локали для выбора соответсвующего языка. Приложение не должно изменять строку. Строка может измениться при последующем вызовом perror() или strerror(). В библиотеке нет функций изменяющих эту строку.

    Функция strerror_r() аналогична strerror(), но безопасна с точки зрения подпроцессов (threads). Она возвращает строку в буфере buf, предоставленном пользователем и имеющим длину n.

     

    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ

    Функция strerror() возвращает соответсвующее описание ошибки или сообщение о том, что ошибка неизвестна. Значение errno при удачном вызове не меняется, а при ошибке устанавливается в ненулевое значение. Функция strerror_r() возвращает 0 при успешном завершении и -1 при ошибке, устанавливая при этом errno.

     

    НАЙДЕННЫЕ ОШИБКИ

    EINVAL
    Значение errnum не является правильным кодом ошибки.
    ERANGE
    Предоставлено недостаточно места для размещения строки описания ошибки.

     

    СООТВЕТСТВИЕ СТАНДАРТАМ

    SVID 3, POSIX, BSD 4.3, ISO/IEC 9899:1990 (C89).
    strerror_r() с указанным выше прототипом соответсвует SUSv3 и была использована в Digital Unix и HP Unix. Несовместимая функция с прототипом

    char *strerror_r(int errnum, char *buf, size_t n);

    является расширением GNU, используемым в glibc (начиная с 2.0), и должна рассматриваться как устаревшая с точки зрения SUSv3. Версия GNU может использовать буфер пользователя, но не нуждается в нем. Если она использует буфер пользователя, то результат может быть обрезан в случае, когда предоставленный буфер слишком мал. Результат всегда оканчивается NUL.  

    СМ. ТАКЖЕ

    errno(3), perror(3), strsignal(3)


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
    НАЙДЕННЫЕ ОШИБКИ
    СООТВЕТСТВИЕ СТАНДАРТАМ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру