经常有同事问我,socket 错误之后打印的错误码是什么意思,每次都要解释,所以,索性整理一下,供大家查看 
 
errno 是记录系统的最后一次错误代码。代码是一个int型的值,在errno.h中定义 
 
 
注意:只有当一个库函数失败时,errno才会被设置。当函数成功运行时,errno的值不会被修改。这意味着我们不能通过测试errno的值来判断是否有错误存在。反之,只有当被调用的函数提示有错误发生时检查errno的值才有意义。 
 
 
 
 
错误数 描述  
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 processe  
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  
 |