linux下errno详解

errno详解:

Linux中系统调用的错误都存储于errno中,errno由操作系统维护,存储就近发生的错误,即下一次的错误码会覆盖掉上一次的错误。

查看系统中所有的errno所代表的含义,可以采用如下的代码:

#include <stdio.h>
#include <string.h>     //for strerror()
//#include <errno.h>


int main()
{
    int tmp = 0;

    for (tmp = 0; tmp <=256; tmp++) {
        printf("errno: %2d\t%s\n", tmp, strerror(tmp));
    }

    return 0;
}

输出信息如下:

errno:  0    Success
errno:  1    Operation not permitted
errno:  2    No such file or directory
errno:  3    No such process
errno:  4    Interrupted system call
errno:  5    I/O error
errno:  6    No such device or address
errno:  7    Argument list too long
errno:  8    Exec format error
errno:  9    Bad file descriptor
errno: 10    No child processes
errno: 11    Try again / Resource temporarily unavailable
errno: 12    Out of memory
errno: 13    Permission denied
errno: 14    Bad address
errno: 15    Block device required
errno: 16    Device or resource busy
errno: 17    File exists
errno: 18    Cross-device link
errno: 19    No such device
errno: 20    Not a directory
errno: 21    Is a directory
errno: 22    Invalid argument
errno: 23    File table overflow
errno: 24    Too many open files
errno: 25    Not a typewriter
errno: 26    Text file busy
errno: 27    File too large
errno: 28    No space left on device
errno: 29    Illegal seek
errno: 30    Read-only file system
errno: 31    Too many links
errno: 32    Broken pipe
errno: 33    Math argument out of domain of func
errno: 34    Math result not representable
errno: 35    Resource deadlock would occur
errno: 36    File name too long
errno: 37    No record locks available
errno: 38    Function not implemented
errno: 39    Directory not empty
errno: 40    Too many symbolic links encountered
errno: 41    Unknown error 41
errno: 42    No message of desired type
errno: 43    Identifier removed
errno: 44    Channel number out of range
errno: 45    Level 2 not synchronized
errno: 46    Level 3 halted
errno: 47    Level 3 reset
errno: 48    Link number out of range
errno: 49    Protocol driver not attached
errno: 50    No CSI structure available
errno: 51    Level 2 halted
errno: 52    Invalid exchange
errno: 53    Invalid request descriptor
errno: 54    Exchange full
errno: 55    No anode
errno: 56    Invalid request code
errno: 57    Invalid slot
errno: 58    Unknown error 58
errno: 59    Bad font file format
errno: 60    Device not a stream
errno: 61    No data available
errno: 62    Timer expired
errno: 63    Out of streams resources
errno: 64    Machine is not on the network
errno: 65    Package not installed
errno: 66    Object is remote
errno: 67    Link has been severed
errno: 68    Advertise error
errno: 69    Srmount error
errno: 70    Communication error on send
errno: 71    Protocol error
errno: 72    Multihop attempted
errno: 73    RFS specific error
errno: 74    Not a data message
errno: 75    Value too large for defined data type
errno: 76    Name not unique on network
errno: 77    File descriptor in bad state
errno: 78    Remote address changed
errno: 79    Can not access a needed shared library
errno: 80    Accessing a corrupted shared library
errno: 81    .lib section in a.out corrupted
errno: 82    Attempting to link in too many shared libraries
errno: 83    Cannot exec a shared library directly
errno: 84    Illegal byte sequence
errno: 85    Interrupted system call should be restarted
errno: 86    Streams pipe error
errno: 87    Too many users
errno: 88    Socket operation on non-socket
errno: 89    Destination address required
errno: 90    Message too long
errno: 91    Protocol wrong type for socket
errno: 92    Protocol not available
errno: 93    Protocol not supported
errno: 94    Socket type not supported
errno: 95    Operation not supported on transport endpoint
errno: 96    Protocol family not supported
errno: 97    Address family not supported by protocol
errno: 98    Address already in use
errno: 99    Cannot assign requested address
errno: 100    Network is down
errno: 101    Network is unreachable
errno: 102    Network dropped connection because of reset
errno: 103    Software caused connection abort
errno: 104    Connection reset by peer
errno: 105    No buffer space available
errno: 106    Transport endpoint is already connected
errno: 107    Transport endpoint is not connected
errno: 108    Cannot send after transport endpoint shutdown
errno: 109    Too many references: cannot splice
errno: 110    Connection timed out
errno: 111    Connection refused
errno: 112    Host is down
errno: 113    No route to host
errno: 114    Operation already in progress
errno: 115    Operation now in progress
errno: 116    Stale NFS file handle
errno: 117    Structure needs cleaning
errno: 118    Not a XENIX named type file
errno: 119    No XENIX semaphores available
errno: 120    Is a named type file
errno: 121    Remote I/O error
errno: 122    Quota exceeded
errno: 123    No medium found
errno: 124    Wrong medium type
errno: 125    Operation Canceled
errno: 126    Required key not available
errno: 127    Key has expired
errno: 128    Key has been revoked
errno: 129    Key was rejected by service
errno: 130    Owner died
errno: 131    State not recoverable
errno: 132~256 Unknown error

 

 

本文转载自:https://www.cnblogs.com/Jimmy1988/p/7485133.html

posted @ 2020-09-04 11:48  wmate  阅读(1209)  评论(0编辑  收藏  举报