• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

               C++ 技術中心

               :: 首頁 :: 聯系 ::  :: 管理
              160 Posts :: 0 Stories :: 87 Comments :: 0 Trackbacks

            公告

            鄭重聲明:本BLOG所發表的原創文章,作者保留一切權利。必須經過作者本人同意后方可轉載,并注名作者(天空)和出處(CppBlog.com)。作者Email:coder@luckcoder.com

            留言簿(27)

            搜索

            •  

            最新隨筆

            最新評論

            評論排行榜

            errno 在 <errno.h> 中定義,錯誤 Exx 的宏定義在 /usr/include/asm-generic 文件夾下面的 errno-base.h 和 errno.h,分別定義了 1-34 、35-132 的錯誤定義。

            strerror() 函數依據 errno 值返回錯誤描述字符串,下面程序打印對照表:

            01.#include <errno.h>  
            02.#include <string.h>  
            03.#include <stdio.h>  
            04.  
            05.int main()  
            06.{  
            07.    int i;  
            08.    for(i = 0; i < 140++i)  
            09.    {  
            10.        errno = i;  
            11.        printf("errno %d :\t\t%s\n",i,strerror(errno));  
            12.    }
              
            13.    return 0;  
            14.}
              

             


            錯誤對照表:

             

             

            errno0 : Success

            errno1 : Operation not permitted

            errno2 : No such file or directory

            errno3 : No such process

            errno4 : Interrupted system call

            errno5 : Input/output error

            errno6 : No such device or address

            errno7 : Argument list too long

            errno8 : Exec format error

            errno9 : Bad file descriptor

            errno10 : No child processes

            errno11 : Resource temporarily unavailable

            errno12 : Cannot allocate memory

            errno13 : Permission denied

            errno14 : Bad address

            errno15 : Block device required

            errno16 : Device or resource busy

            errno17 : File exists

            errno18 : Invalid cross-device link

            errno19 : No such device

            errno20 : Not a directory

            errno21 : Is a directory

            errno22 : Invalid argument

            errno23 : Too many open files in system

            errno24 : Too many open files

            errno25 : Inappropriate ioctl for device

            errno26 : Text file busy

            errno27 : File too large

            errno28 : No space left on device

            errno29 : Illegal seek

            errno30 : Read-only file system

            errno31 : Too many links

            errno32 : Broken pipe

            errno33 : Numerical argument out of domain

            errno34 : Numerical result out of range

            errno35 : Resource deadlock avoided

            errno36 : File name too long

            errno37 : No locks available

            errno38 : Function not implemented

            errno39 : Directory not empty

            errno40 : Too many levels of symbolic links

            errno41 : Unknown error 41

            errno42 : No message of desired type

            errno43 : Identifier removed

            errno44 : Channel number out of range

            errno45 : Level 2 not synchronized

            errno46 : Level 3 halted

            errno47 : Level 3 reset

            errno48 : Link number out of range

            errno49 : Protocol driver not attached

            errno50 : No CSI structure available

            errno51 : Level 2 halted

            errno52 : Invalid exchange

            errno53 : Invalid request descriptor

            errno54 : Exchange full

            errno55 : No anode

            errno56 : Invalid request code

            errno57 : Invalid slot

            errno58 : Unknown error 58

            errno59 : Bad font file format

            errno60 : Device not a stream

            errno61 : No data available

            errno62 : Timer expired

            errno63 : Out of streams resources

            errno64 : Machine is not on the network

            errno65 : Package not installed

            errno66 : Object is remote

            errno67 : Link has been severed

            errno68 : Advertise error

            errno69 : Srmount error

            errno70 : Communication error on send

            errno71 : Protocol error

            errno72 : Multihop attempted

            errno73 : RFS specific error

            errno74 : Bad message

            errno75 : Value too large for defined datatype

            errno76 : Name not unique on network

            errno77 : File descriptor in bad state

            errno78 : Remote address changed

            errno79 : Can not access a needed sharedlibrary

            errno80 : Accessing a corrupted sharedlibrary

            errno81 : .lib section in a.out corrupted

            errno82 : Attempting to link in too manyshared libraries

            errno83 : Cannot exec a shared librarydirectly

            errno84 : Invalid or incomplete multibyte orwide character

            errno85 : Interrupted system call should berestarted

            errno86 : Streams pipe error

            errno87 : Too many users

            errno88 : Socket operation on non-socket

            errno89 : Destinationaddress required

            errno90 : Message too long

            errno91 : Protocol wrong type for socket

            errno92 : Protocol not available

            errno93 : Protocol not supported

            errno94 : Socket type not supported

            errno95 : Operation not supported

            errno96 : Protocol family not supported

            errno97 : Address family not supported byprotocol

            errno98 : Address already in use

            errno99 : Cannot assign requested address

            errno100 : Network is down

            errno101 : Network is unreachable

            errno102 : Network dropped connection onreset

            errno103 : Software caused connection abort

            errno104 : Connection reset by peer

            errno105 : No buffer space available

            errno106 : Transport endpoint is alreadyconnected

            errno107 : Transport endpoint is notconnected

            errno108 : Cannot send after transportendpoint shutdown

            errno109 : Too many references: cannot splice

            errno110 : Connection timed out

            errno111 : Connection refused

            errno112 : Host is down

            errno113 : No route to host

            errno114 : Operation already in progress

            errno115 : Operation now in progress

            errno116 : Stale NFS file handle

            errno117 : Structure needs cleaning

            errno118 : Not a XENIX named type file

            errno119 : No XENIX semaphores available

            errno120 : Is a named type file

            errno121 : Remote I/O error

            errno122 : Disk quota exceeded

            errno123 : No medium found

            errno124 : Wrong medium type

            errno125 : Operation canceled

            errno126 : Required key not available

            errno127 : Key has expired

            errno128 : Key has been revoked

            errno129 : Key was rejected by service

            errno130 : Owner died

            errno131 : State not recoverable

            errno132 : Operation not possible due toRF-kill

            errno133 : Unknown error 133

            errno134 : Unknown error 134

            errno135 : Unknown error 135

            errno136 : Unknown error 136

            errno137 : Unknown error 137

            errno138 : Unknown error 138

            errno139 : Unknown error 139


            由上可見Linux對錯誤宏的定義。

            頭文件 /usr/include/asm-generic/errno-base.h 的源碼:

            #ifndef _ASM_GENERIC_ERRNO_BASE_H
            #define _ASM_GENERIC_ERRNO_BASE_H

            #define EPERM 1 /* Operation not permitted */
            #define ENOENT2 /* No such file or directory */
            #define ESRCH 3 /* No such process */
            #define EINTR 4 /* Interrupted system call */
            #define EIO 5 /* I/O error */
            #define ENXIO 6 /* No such device or address */
            #define E2BIG 7 /* Argument list too long */
            #define ENOEXEC8 /* Exec format error */
            #define EBADF 9 /* Bad file number */
            #define ECHILD10 /* No child processes */
            #define EAGAIN11 /* Try again */
            #define ENOMEM12 /* Out of memory */
            #define EACCES13 /* Permission denied */
            #define EFAULT14 /* Bad address */
            #define ENOTBLK15 /* Block device required */
            #define EBUSY 16 /* Device or resource busy */
            #define EEXIST17 /* File exists */
            #define EXDEV 18 /* Cross-device link */
            #define ENODEV19 /* No such device */
            #define ENOTDIR20 /* Not a directory */
            #define EISDIR21 /* Is a directory */
            #define EINVAL22 /* Invalid argument */
            #define ENFILE23 /* File table overflow */
            #define EMFILE24 /* Too many open files */
            #define ENOTTY25 /* Not a typewriter */
            #define ETXTBSY26 /* Text file busy */
            #define EFBIG 27 /* File too large */
            #define ENOSPC28 /* No space left on device */
            #define ESPIPE29 /* Illegal seek */
            #define EROFS 30 /* Read-only file system */
            #define EMLINK31 /* Too many links */
            #define EPIPE 32 /* Broken pipe */
            #define EDOM 33 /* Math argument out of domain of func */
            #define ERANGE34 /* Math result not representable */

            #endif


            頭文件/usr/include/asm-generic/erno.h源碼:

            #ifndef _ASM_GENERIC_ERRNO_H
            #define _ASM_GENERIC_ERRNO_H

            #include <asm-generic/errno-base.h>

            #define EDEADLK35 /* Resource deadlock would occur */
            #define ENAMETOOLONG36 /* File name too long */
            #define ENOLCK37 /* No record locks available */
            #define ENOSYS38 /* Function not implemented */
            #define ENOTEMPTY39 /* Directory not empty */
            #define ELOOP 40 /* Too many symbolic links encountered */
            #define EWOULDBLOCKEAGAIN /* Operation would block */
            #define ENOMSG42 /* No message of desired type */
            #define EIDRM 43 /* Identifier removed */
            #define ECHRNG44 /* Channel number out of range */
            #define EL2NSYNC45 /* Level 2 not synchronized */
            #define EL3HLT46 /* Level 3 halted */
            #define EL3RST47 /* Level 3 reset */
            #define ELNRNG48 /* Link number out of range */
            #define EUNATCH49 /* Protocol driver not attached */
            #define ENOCSI50 /* No CSI structure available */
            #define EL2HLT51 /* Level 2 halted */
            #define EBADE 52 /* Invalid exchange */
            #define EBADR 53 /* Invalid request descriptor */
            #define EXFULL54 /* Exchange full */
            #define ENOANO55 /* No anode */
            #define EBADRQC56 /* Invalid request code */
            #define EBADSLT57 /* Invalid slot */

            #define EDEADLOCKEDEADLK

            #define EBFONT59 /* Bad font file format */
            #define ENOSTR60 /* Device not a stream */
            #define ENODATA61 /* No data available */
            #define ETIME 62 /* Timer expired */
            #define ENOSR 63 /* Out of streams resources */
            #define ENONET64 /* Machine is not on the network */
            #define ENOPKG65 /* Package not installed */
            #define EREMOTE66 /* Object is remote */
            #define ENOLINK67 /* Link has been severed */
            #define EADV 68 /* Advertise error */
            #define ESRMNT69 /* Srmount error */
            #define ECOMM 70 /* Communication error on send */
            #define EPROTO71 /* Protocol error */
            #define EMULTIHOP72 /* Multihop attempted */
            #define EDOTDOT73 /* RFS specific error */
            #define EBADMSG74 /* Not a data message */
            #define EOVERFLOW75 /* Value too large for defined data type */
            #define ENOTUNIQ76 /* Name not unique on network */
            #define EBADFD77 /* File descriptor in bad state */
            #define EREMCHG78 /* Remote address changed */
            #define ELIBACC79 /* Can not access a needed shared library */
            #define ELIBBAD80 /* Accessing a corrupted shared library */
            #define ELIBSCN81 /* .lib section in a.out corrupted */
            #define ELIBMAX82 /* Attempting to link in too many shared libraries */
            #define ELIBEXEC83 /* Cannot exec a shared library directly */
            #define EILSEQ84 /* Illegal byte sequence */
            #define ERESTART85 /* Interrupted system call should be restarted */
            #define ESTRPIPE86 /* Streams pipe error */
            #define EUSERS87 /* Too many users */
            #define ENOTSOCK88 /* Socket operation on non-socket */
            #define EDESTADDRREQ89 /* Destination address required */
            #define EMSGSIZE90 /* Message too long */
            #define EPROTOTYPE91 /* Protocol wrong type for socket */
            #define ENOPROTOOPT92 /* Protocol not available */
            #define EPROTONOSUPPORT93 /* Protocol not supported */
            #define ESOCKTNOSUPPORT94 /* Socket type not supported */
            #define EOPNOTSUPP95 /* Operation not supported on transport endpoint */
            #define EPFNOSUPPORT96 /* Protocol family not supported */
            #define EAFNOSUPPORT97 /* Address family not supported by protocol */
            #define EADDRINUSE98 /* Address already in use */
            #define EADDRNOTAVAIL99 /* Cannot assign requested address */
            #define ENETDOWN100 /* Network is down */
            #define ENETUNREACH101 /* Network is unreachable */
            #define ENETRESET102 /* Network dropped connection because of reset */
            #define ECONNABORTED103 /* Software caused connection abort */
            #define ECONNRESET104 /* Connection reset by peer */
            #define ENOBUFS105 /* No buffer space available */
            #define EISCONN106 /* Transport endpoint is already connected */
            #define ENOTCONN107 /* Transport endpoint is not connected */
            #define ESHUTDOWN108 /* Cannot send after transport endpoint shutdown */
            #define ETOOMANYREFS109 /* Too many references: cannot splice */
            #define ETIMEDOUT110 /* Connection timed out */
            #define ECONNREFUSED111 /* Connection refused */
            #define EHOSTDOWN112 /* Host is down */
            #define EHOSTUNREACH113 /* No route to host */
            #define EALREADY114 /* Operation already in progress */
            #define EINPROGRESS115 /* Operation now in progress */
            #define ESTALE116 /* Stale NFS file handle */
            #define EUCLEAN117 /* Structure needs cleaning */
            #define ENOTNAM118 /* Not a XENIX named type file */
            #define ENAVAIL119 /* No XENIX semaphores available */
            #define EISNAM120 /* Is a named type file */
            #define EREMOTEIO121 /* Remote I/O error */
            #define EDQUOT122 /* Quota exceeded */

            #define ENOMEDIUM123 /* No medium found */
            #define EMEDIUMTYPE124 /* Wrong medium type */
            #define ECANCELED125 /* Operation Canceled */
            #define ENOKEY126 /* Required key not available */
            #define EKEYEXPIRED127 /* Key has expired */
            #define EKEYREVOKED128 /* Key has been revoked */
            #define EKEYREJECTED129 /* Key was rejected by service */

            /* for robust mutexes */
            #define EOWNERDEAD130 /* Owner died */
            #define ENOTRECOVERABLE131 /* State not recoverable */

            #define ERFKILL 132/* Operation not possible due to RF-kill */

            #endif


            posted on 2013-08-31 13:33 C++技術中心 閱讀(7767) 評論(0)  編輯 收藏 引用 所屬分類: Linux 編程
            日产精品久久久久久久| 久久国产精品偷99| 久久亚洲AV成人无码软件| 欧美精品福利视频一区二区三区久久久精品 | 婷婷久久综合九色综合98| 青青草原综合久久大伊人精品| 伊人久久免费视频| 久久久午夜精品| 精品一区二区久久久久久久网站| 国内精品久久久久久久亚洲| 久久久久久国产精品无码下载 | 国产精品久久久久久久app| 久久久久久精品无码人妻| 国内精品久久久久久99蜜桃| 久久精品国产色蜜蜜麻豆 | 久久亚洲AV成人无码电影| 日韩亚洲欧美久久久www综合网 | 亚洲国产精品成人AV无码久久综合影院| 亚洲欧美日韩精品久久亚洲区| 91精品国产高清久久久久久io| 久久久久久久久久免免费精品 | 伊人久久亚洲综合影院| 国产午夜精品久久久久免费视| 国产亚洲精午夜久久久久久| 久久久久人妻一区精品性色av| 亚洲欧美一级久久精品| 91久久精品电影| 国产精品久久久久9999高清| 国产成人综合久久精品红| 国产精品日韩欧美久久综合| 久久99热只有频精品8| 一本久道久久综合狠狠爱| 伊人久久大香线蕉综合热线| 国内精品伊人久久久久网站| 久久午夜电影网| 国产一区二区精品久久| AV色综合久久天堂AV色综合在| 亚洲AV无码久久精品蜜桃| 亚洲精品蜜桃久久久久久| 久久综合狠狠综合久久| 午夜精品久久久久久久久|