errno 在 中定义,错误 Exx 的宏定义在 /usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h,分别定义了 1-34 、35-132 的错误定义。

strerror() 函数依据 errno 值返回错误描述字符串,下面程序打印对照表:

Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.linuxidc.com/

–>01.#include

02.#include

03.#include

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

#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

linux errno 线程,Linux errno 错误对照表相关推荐

  1. linux malloc 线程,Linux上的侧线程的malloc/calloc崩溃

    我正在用C写一个服务器 - 客户端应用程序,共享一些信息.服务器以双线程模式工作 - 主线程等待输入,而侧线程响应客户端的请求.客户端也是这样工作的,但它等待用户输入(来自stdin),并且如果它接收 ...

  2. linux nice线程,linux nice 线程

    CPU资源监控(-u,或-P ALL) 例如,每10秒采样一次,连续采样3次,观察CPU 的使用情况,并将采样结果以二进制形式存入当前目录下的文件test中,需键入如下命令: sar -u -o te ...

  3. Linux保护线程,linux的线程是否受到了保护?

    a52527459:好久以前的文章了,我测试了下,我的a,b两个函数内的变量的地址差值为:8392688 要做点小修改,对地址强制变化,否则对变量地址加减 直接段错误的. printf("h ...

  4. linux aio 线程,linux AIO (异步IO) 那点事儿

    在高性能的服务器编程中,IO 模型理所当然的是重中之重,需要谨慎选型的,对于网络套接字,我们可以采用epoll 的方式来轮询,尽管epoll也有一些缺陷,但总体来说还是很高效的,尤其来大量套接字的场景 ...

  5. 【Linux 内核】Linux 内核特性 ( 组织形式 | 进程调度 | 内核线程 | 多平台虚拟内存管理 | 虚拟文件系统 | 内核模块机制 | 定制系统调用 | 网络模块架构 )

    文章目录 一.Linux 内核特性 1.Linux 内核组织形式 2.Linux 进程调度 3.Linux 内核线程 4.Linux 内核多平台虚拟内存管理 5.Linux 虚拟文件系统 6.Linu ...

  6. Linux errno 错误对照表

    errno 在 中定义,错误 Exx 的宏定义在 /usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h,分别定义了 1-34 .35-132 的 ...

  7. Linux的errno 错误对照表

    Linux的errno 错误对照表 路径:在/usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h errno0 : Success errno1 ...

  8. windows、Linux、VxWorks 下errno含义

    相关文档 window下: windows下errno含义 Linux cat /usr/include/asm-generic/errno-base.h cat /usr/include/asm-a ...

  9. errno错误对照表

    错误对照表: 错误值 内容 内容 errno 0 : Success 成功 errno 1 : Operation not permitted 不允许操作 errno 2 : No such file ...

最新文章

  1. TensorFlow下的基础命令语句:数组、字典、判断、循环、与函数
  2. SAP MM IV中的Duplicated Invoice Check功能的测试
  3. 网络部署原理加实验步骤
  4. c++面试题之标准模板库
  5. 闲鱼把各种玩法做成了一个平台:哆啦A梦
  6. NSDate根据日期获得当前是周几,以及一年内的第几周,以及一个月内得第几周...
  7. dll文件的c++制作dll文件的c++制作
  8. 微软研究院研究员Ryan Beckett 博士论文《Network Control Plane Synthesis and Verification》下载—2018ACM最佳博士论文题目奖
  9. MJRefresh上拉刷新下拉加载
  10. [转贴]一个农村高考落榜生的心路历程
  11. Linux源码安装包快速升级方法
  12. 基础平台系列-1-第三方服务
  13. 锐捷S12010交换机配置端口镜像
  14. java 正则用法_Java正则用法
  15. html手机保存图片不显示,手机保存的图片在相册显示不了解决方法
  16. 电脑系统安装后桌面图标隔开很宽怎么调?
  17. goLang 时间处理
  18. ssdt函数索引号_BUG:SSDT函数名获取SSDT函数号
  19. 用Qt做的拼图小游戏
  20. 2016年linux认证,2016年Linux认证考试练习题及答案

热门文章

  1. VMware vCenter Converter 关闭SSL加密,提高35-40%性能
  2. ASP.NET 2.0新特性视频教程下载
  3. Java-Type简单分类
  4. python sort怎么用,Linux Sort命令详细用法(有实例)
  5. linux 进程间读写锁,Linux系统编程—进程间同步
  6. Python 第三方模块之 numpy.random
  7. Python 之 进程
  8. mysql必_MySQL必知必会(一)
  9. java实现控件绑定数据源_控件(三)——TreeView控件以XmlDataSource控件为数据源实现简单的绑定...
  10. java接口源码_java collection接口源码