<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-menu-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-os vector-sticky-header-enabled skin-thumbsize-clientpref-standard" lang="zh" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>Errno.h</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="./_res_/favicon.png">
    <link rel="canonical" href="https://zh.wikipedia.org/wiki/Errno.h"> <link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    <link href="./_mw_/ext.gadget.large-font.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.gadget.text-spacing.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="./_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
  </head>
  <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Errno_h rootpage-Errno_h skin-vector-2022 action-view">
    <div class="mw-page-container">
      <div class="mw-page-container-inner">
        <div class="mw-content-container">
          <main id="content" class="mw-body">
            <header class="mw-body-header vector-page-titlebar">
              <h1 id="firstHeading" class="firstHeading mw-first-heading">errno.h</h1>
            </header>
            <a id="top"></a>
            <div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
              <div id="contentSub">
                <div id="mw-content-subtitle"></div>
              </div>
              <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="zh" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="zh" dir="ltr"><div id="noteTA-f3e2a619" class="noteTA"><div class="noteTA-group"><div data-noteta-group-source="module" data-noteta-group="IT"></div></div></div>
<p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r84265675">
/* start https://zh.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:" :"}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist-pipe dd::after,.mw-parser-output .hlist-pipe li::after{content:" | ";font-weight:normal}.mw-parser-output .hlist-hyphen dd::after,.mw-parser-output .hlist-hyphen li::after{content:" - ";font-weight:normal}.mw-parser-output .hlist-comma dd::after,.mw-parser-output .hlist-comma li::after{content:"、";font-weight:normal}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:"（"counter(listitem)"\a0 "}.mw-parser-output ul.cslist,.mw-parser-output ul.sslist{margin:0;padding:0;display:inline-block;list-style:none}.mw-parser-output .cslist li,.mw-parser-output .sslist li{margin:0;display:inline-block}.mw-parser-output .cslist li::after{content:"，"}.mw-parser-output .sslist li::after{content:"；"}.mw-parser-output .cslist li:last-child::after,.mw-parser-output .sslist li:last-child::after{content:none}


/* end   https://zh.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r84913072">
/* start https://zh.wikipedia.org/ */


.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:100%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-subgroup,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-pretitle,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-heading,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-above,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-below{background:inherit!important;color:inherit!important;border-color:#54595d!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar a:not(.new):not(.mw-selflink):link{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-subgroup,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-pretitle,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-heading,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-above,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-below{background:inherit!important;color:inherit!important;border-color:#54595d!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar a:not(.new):not(.mw-selflink):link{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}


/* end   https://zh.wikipedia.org/ */
</style><table class="sidebar nomobile nowraplinks"><tbody><tr><th class="sidebar-title"><a href="C%E6%A8%99%E6%BA%96%E5%87%BD%E5%BC%8F%E5%BA%AB" title="C標準函式庫">C标准函数库</a></th></tr><tr><th class="sidebar-heading">
一般</th></tr><tr><td class="sidebar-content" style="text-align: left">
<ul><li><a href="Stdlib.h#数据类型" title="Stdlib.h">数据类型</a></li>
<li><a href="Ctype.h" title="Ctype.h">字符类型</a></li>
<li><a href="String.h" title="String.h">字符串</a></li>
<li><a href="Math.h" title="Math.h">数学</a></li>
<li><a href="Stdio.h" title="Stdio.h">文件输入/输出</a></li>
<li><a href="Time.h" title="Time.h">日期/时间</a></li>
<li><a href="Locale.h" title="Locale.h">本地化</a></li>
<li><a href="Stdlib.h#函数" title="Stdlib.h">内存分配</a></li>
<li><a href="Stdlib.h#函数" title="Stdlib.h">过程控制</a></li>
<li><a href="Signal.h" title="Signal.h">信号</a></li>
<li><a href="C%E6%9B%BF%E4%BB%A3%E6%A0%87%E8%AE%B0" title="C替代标记">替代标记</a></li></ul></td>
</tr><tr><th class="sidebar-heading">
杂项</th></tr><tr><td class="sidebar-content" style="text-align: left">
<ul><li><code>&lt;<a href="Assert.h" title="Assert.h">assert.h</a>&gt;</code></li>
<li><code>&lt;<a class="mw-selflink selflink">errno.h</a>&gt;</code></li>
<li><code>&lt;<a href="Setjmp.h" title="Setjmp.h">setjmp.h</a>&gt;</code></li>
<li><code>&lt;<a href="Stdarg.h" title="Stdarg.h">stdarg.h</a>&gt;</code></li></ul></td>
</tr><tr><td class="sidebar-navbar" style="line-height:1.6"><style data-mw-deduplicate="TemplateStyles:r84244141">
/* start https://zh.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:110%;margin:0 8em}.mw-parser-output .navbar-ct-mini{font-size:110%;margin:0 5em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end   https://zh.wikipedia.org/ */
</style></td></tr></tbody></table> 
<p><code><b>errno.h</b></code>是<a href="C%E8%AA%9E%E8%A8%80" class="mw-redirect" title="C語言">C語言</a><a href="C%E6%A8%99%E6%BA%96%E5%87%BD%E5%BC%8F%E5%BA%AB" title="C標準函式庫">C標準函式庫</a>裡的標頭檔，定義了透過錯誤碼來回報錯誤資訊的巨集：
</p>
<ul><li><code>errno</code>巨集定義為一個<code>int</code>型態的<a href="%E5%B7%A6%E5%80%BC" class="mw-redirect" title="左值">左值</a>, 包含任何函式使用errno功能所產生的上一個錯誤碼。</li>
<li>一些表示錯誤碼，定義為整數值的巨集：
<ul><li><code>EDOM</code>源自函式的參數超出範圍,例如<code>sqrt(-1)</code></li>
<li><code>ERANGE</code>源自函式的結果超出範圍,例如<code>strtol("0xfffffffff",NULL,0)</code></li>
<li><code>EILSEQ</code>源自不合法的字元順序,例如<code>wcstombs(str, L"\xffff", 2)</code></li></ul></li></ul>
<p><a href="POSIX" class="mw-redirect" title="POSIX">POSIX</a>相容的<a href="%E4%BD%9C%E6%A5%AD%E7%B3%BB%E7%B5%B1" class="mw-redirect" title="作業系統">作業系統</a>像是<a href="Unix" class="mw-redirect" title="Unix">UNIX</a>或<a href="Linux" title="Linux">Linux</a>或許會包含其他巨集來表示其他作業系統的錯誤碼
</p><p>2003年12月29日，<a href="SCO_Group" title="SCO Group">SCO Group</a>對被選上的<a href="Fortune_1000" class="mw-redirect" title="Fortune 1000">Fortune 1000</a>發布<a href="Digital_Millennium_Copyright_Act" class="mw-redirect" title="Digital Millennium Copyright Act">DMCA</a>公告，宣稱<code>errno.h</code>在未授權的狀況下從UNIX系統複製到了Linux系統。Linux的製作者暨商標擁有者<a href="Linus_Torvalds" class="mw-redirect" title="Linus Torvalds">Linus Torvalds</a>否認SCO的指控，說是他自己寫了Linux版本的程式。
</p>
<div class="mw-heading mw-heading2"><h2 id="原始碼"><span id=".E5.8E.9F.E5.A7.8B.E7.A2.BC"></span>原始碼</h2></div>
<p><code>errno.h</code>在 Linux 中的原始碼:
</p>
<div class="mw-highlight mw-highlight-lang-c mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="cm">/* 以下是來自 Linux 2.4.20-18 的核心原始碼中的 /usr/include/asm/errno.h */</span>
<span class="linenos" data-line="2"></span><span class="cp">#ifndef _I386_ERRNO_H</span>
<span class="linenos" data-line="3"></span><span class="cp">#define _I386_ERRNO_H</span>
<span class="linenos" data-line="4"></span><span class="cp">#define EPERM 1 </span><span class="cm">/* Operation not permitted */</span>
<span class="linenos" data-line="5"></span><span class="cp">#define ENOENT 2 </span><span class="cm">/* No such file or directory */</span>
<span class="linenos" data-line="6"></span><span class="cp">#define ESRCH 3 </span><span class="cm">/* No such process */</span>
<span class="linenos" data-line="7"></span><span class="cp">#define EINTR 4 </span><span class="cm">/* Interrupted system call */</span>
<span class="linenos" data-line="8"></span><span class="cp">#define EIO 5 </span><span class="cm">/* I/O error */</span>
<span class="linenos" data-line="9"></span><span class="cp">#define ENXIO 6 </span><span class="cm">/* No such device or address */</span>
<span class="linenos" data-line="10"></span><span class="cp">#define E2BIG 7 </span><span class="cm">/* Arg list too long */</span>
<span class="linenos" data-line="11"></span><span class="cp">#define ENOEXEC 8 </span><span class="cm">/* Exec format error */</span>
<span class="linenos" data-line="12"></span><span class="cp">#define EBADF 9 </span><span class="cm">/* Bad file number */</span>
<span class="linenos" data-line="13"></span><span class="cp">#define ECHILD 10 </span><span class="cm">/* No child processes */</span>
<span class="linenos" data-line="14"></span><span class="cp">#define EAGAIN 11 </span><span class="cm">/* Try again */</span>
<span class="linenos" data-line="15"></span><span class="cp">#define ENOMEM 12 </span><span class="cm">/* Out of memory */</span>
<span class="linenos" data-line="16"></span><span class="cp">#define EACCES 13 </span><span class="cm">/* Permission denied */</span>
<span class="linenos" data-line="17"></span><span class="cp">#define EFAULT 14 </span><span class="cm">/* Bad address */</span>
<span class="linenos" data-line="18"></span><span class="cp">#define ENOTBLK 15 </span><span class="cm">/* Block device required */</span>
<span class="linenos" data-line="19"></span><span class="cp">#define EBUSY 16 </span><span class="cm">/* Device or resource busy */</span>
<span class="linenos" data-line="20"></span><span class="cp">#define EEXIST 17 </span><span class="cm">/* File exists */</span>
<span class="linenos" data-line="21"></span><span class="cp">#define EXDEV 18 </span><span class="cm">/* Cross-device link */</span>
<span class="linenos" data-line="22"></span><span class="cp">#define ENODEV 19 </span><span class="cm">/* No such device */</span>
<span class="linenos" data-line="23"></span><span class="cp">#define ENOTDIR 20 </span><span class="cm">/* Not a directory */</span>
<span class="linenos" data-line="24"></span><span class="cp">#define EISDIR 21 </span><span class="cm">/* Is a directory */</span>
<span class="linenos" data-line="25"></span><span class="cp">#define EINVAL 22 </span><span class="cm">/* Invalid argument */</span>
<span class="linenos" data-line="26"></span><span class="cp">#define ENFILE 23 </span><span class="cm">/* File table overflow */</span>
<span class="linenos" data-line="27"></span><span class="cp">#define EMFILE 24 </span><span class="cm">/* Too many open files */</span>
<span class="linenos" data-line="28"></span><span class="cp">#define ENOTTY 25 </span><span class="cm">/* Not a typewriter */</span>
<span class="linenos" data-line="29"></span><span class="cp">#define ETXTBSY 26 </span><span class="cm">/* Text file busy */</span>
<span class="linenos" data-line="30"></span><span class="cp">#define EFBIG 27 </span><span class="cm">/* File too large */</span>
<span class="linenos" data-line="31"></span><span class="cp">#define ENOSPC 28 </span><span class="cm">/* No space left on device */</span>
<span class="linenos" data-line="32"></span><span class="cp">#define ESPIPE 29 </span><span class="cm">/* Illegal seek */</span>
<span class="linenos" data-line="33"></span><span class="cp">#define EROFS 30 </span><span class="cm">/* Read-only file system */</span>
<span class="linenos" data-line="34"></span><span class="cp">#define EMLINK 31 </span><span class="cm">/* Too many links */</span>
<span class="linenos" data-line="35"></span><span class="cp">#define EPIPE 32 </span><span class="cm">/* Broken pipe */</span>
<span class="linenos" data-line="36"></span><span class="cp">#define EDOM 33 </span><span class="cm">/* Math argument out of domain of func */</span>
<span class="linenos" data-line="37"></span><span class="cp">#define ERANGE 34 </span><span class="cm">/* Math result not representable */</span>
<span class="linenos" data-line="38"></span><span class="cp">#define EDEADLK 35 </span><span class="cm">/* Resource deadlock would occur */</span>
<span class="linenos" data-line="39"></span><span class="cp">#define ENAMETOOLONG 36 </span><span class="cm">/* File name too long */</span>
<span class="linenos" data-line="40"></span><span class="cp">#define ENOLCK 37 </span><span class="cm">/* No record locks available */</span>
<span class="linenos" data-line="41"></span><span class="cp">#define ENOSYS 38 </span><span class="cm">/* Function not implemented */</span>
<span class="linenos" data-line="42"></span><span class="cp">#define ENOTEMPTY 39 </span><span class="cm">/* Directory not empty */</span>
<span class="linenos" data-line="43"></span><span class="cp">#define ELOOP 40 </span><span class="cm">/* Too many symbolic links encountered */</span>
<span class="linenos" data-line="44"></span><span class="cp">#define EWOULDBLOCK EAGAIN </span><span class="cm">/* Operation would block */</span>
<span class="linenos" data-line="45"></span><span class="cp">#define ENOMSG 42 </span><span class="cm">/* No message of desired type */</span>
<span class="linenos" data-line="46"></span><span class="cp">#define EIDRM 43 </span><span class="cm">/* Identifier removed */</span>
<span class="linenos" data-line="47"></span><span class="cp">#define ECHRNG 44 </span><span class="cm">/* Channel number out of range */</span>
<span class="linenos" data-line="48"></span><span class="cp">#define EL2NSYNC 45 </span><span class="cm">/* Level 2 not synchronized */</span>
<span class="linenos" data-line="49"></span><span class="cp">#define EL3HLT 46 </span><span class="cm">/* Level 3 halted */</span>
<span class="linenos" data-line="50"></span><span class="cp">#define EL3RST 47 </span><span class="cm">/* Level 3 reset */</span>
<span class="linenos" data-line="51"></span><span class="cp">#define ELNRNG 48 </span><span class="cm">/* Link number out of range */</span>
<span class="linenos" data-line="52"></span><span class="cp">#define EUNATCH 49 </span><span class="cm">/* Protocol driver not attached */</span>
<span class="linenos" data-line="53"></span><span class="cp">#define ENOCSI 50 </span><span class="cm">/* No CSI structure available */</span>
<span class="linenos" data-line="54"></span><span class="cp">#define EL2HLT 51 </span><span class="cm">/* Level 2 halted */</span>
<span class="linenos" data-line="55"></span><span class="cp">#define EBADE 52 </span><span class="cm">/* Invalid exchange */</span>
<span class="linenos" data-line="56"></span><span class="cp">#define EBADR 53 </span><span class="cm">/* Invalid request descriptor */</span>
<span class="linenos" data-line="57"></span><span class="cp">#define EXFULL 54 </span><span class="cm">/* Exchange full */</span>
<span class="linenos" data-line="58"></span><span class="cp">#define ENOANO 55 </span><span class="cm">/* No anode */</span>
<span class="linenos" data-line="59"></span><span class="cp">#define EBADRQC 56 </span><span class="cm">/* Invalid request code */</span>
<span class="linenos" data-line="60"></span><span class="cp">#define EBADSLT 57 </span><span class="cm">/* Invalid slot */</span>
<span class="linenos" data-line="61"></span><span class="cp">#define EDEADLOCK EDEADLK</span>
<span class="linenos" data-line="62"></span><span class="cp">#define EBFONT 59 </span><span class="cm">/* Bad font file format */</span>
<span class="linenos" data-line="63"></span><span class="cp">#define ENOSTR 60 </span><span class="cm">/* Device not a stream */</span>
<span class="linenos" data-line="64"></span><span class="cp">#define ENODATA 61 </span><span class="cm">/* No data available */</span>
<span class="linenos" data-line="65"></span><span class="cp">#define ETIME 62 </span><span class="cm">/* Timer expired */</span>
<span class="linenos" data-line="66"></span><span class="cp">#define ENOSR 63 </span><span class="cm">/* Out of streams resources */</span>
<span class="linenos" data-line="67"></span><span class="cp">#define ENONET 64 </span><span class="cm">/* Machine is not on the network */</span>
<span class="linenos" data-line="68"></span><span class="cp">#define ENOPKG 65 </span><span class="cm">/* Package not installed */</span>
<span class="linenos" data-line="69"></span><span class="cp">#define EREMOTE 66 </span><span class="cm">/* Object is remote */</span>
<span class="linenos" data-line="70"></span><span class="cp">#define ENOLINK 67 </span><span class="cm">/* Link has been severed */</span>
<span class="linenos" data-line="71"></span><span class="cp">#define EADV 68 </span><span class="cm">/* Advertise error */</span>
<span class="linenos" data-line="72"></span><span class="cp">#define ESRMNT 69 </span><span class="cm">/* Srmount error */</span>
<span class="linenos" data-line="73"></span><span class="cp">#define ECOMM 70 </span><span class="cm">/* Communication error on send */</span>
<span class="linenos" data-line="74"></span><span class="cp">#define EPROTO 71 </span><span class="cm">/* Protocol error */</span>
<span class="linenos" data-line="75"></span><span class="cp">#define EMULTIHOP 72 </span><span class="cm">/* Multihop attempted */</span>
<span class="linenos" data-line="76"></span><span class="cp">#define EDOTDOT 73 </span><span class="cm">/* RFS specific error */</span>
<span class="linenos" data-line="77"></span><span class="cp">#define EBADMSG 74 </span><span class="cm">/* Not a data message */</span>
<span class="linenos" data-line="78"></span><span class="cp">#define EOVERFLOW 75 </span><span class="cm">/* Value too large for defined data type */</span>
<span class="linenos" data-line="79"></span><span class="cp">#define ENOTUNIQ 76 </span><span class="cm">/* Name not unique on network */</span>
<span class="linenos" data-line="80"></span><span class="cp">#define EBADFD 77 </span><span class="cm">/* File descriptor in bad state */</span>
<span class="linenos" data-line="81"></span><span class="cp">#define EREMCHG 78 </span><span class="cm">/* Remote address changed */</span>
<span class="linenos" data-line="82"></span><span class="cp">#define ELIBACC 79 </span><span class="cm">/* Can not access a needed shared library */</span>
<span class="linenos" data-line="83"></span><span class="cp">#define ELIBBAD 80 </span><span class="cm">/* Accessing a corrupted shared library */</span>
<span class="linenos" data-line="84"></span><span class="cp">#define ELIBSCN 81 </span><span class="cm">/* .lib section in a.out corrupted */</span>
<span class="linenos" data-line="85"></span><span class="cp">#define ELIBMAX 82 </span><span class="cm">/* Attempting to link in too many shared libraries */</span>
<span class="linenos" data-line="86"></span><span class="cp">#define ELIBEXEC 83 </span><span class="cm">/* Cannot exec a shared library directly */</span>
<span class="linenos" data-line="87"></span><span class="cp">#define EILSEQ 84 </span><span class="cm">/* Illegal byte sequence */</span>
<span class="linenos" data-line="88"></span><span class="cp">#define ERESTART 85 </span><span class="cm">/* Interrupted system call should be restarted */</span>
<span class="linenos" data-line="89"></span><span class="cp">#define ESTRPIPE 86 </span><span class="cm">/* Streams pipe error */</span>
<span class="linenos" data-line="90"></span><span class="cp">#define EUSERS 87 </span><span class="cm">/* Too many users */</span>
<span class="linenos" data-line="91"></span><span class="cp">#define ENOTSOCK 88 </span><span class="cm">/* Socket operation on non-socket */</span>
<span class="linenos" data-line="92"></span><span class="cp">#define EDESTADDRREQ 89 </span><span class="cm">/* Destination address required */</span>
<span class="linenos" data-line="93"></span><span class="cp">#define EMSGSIZE 90 </span><span class="cm">/* Message too long */</span>
<span class="linenos" data-line="94"></span><span class="cp">#define EPROTOTYPE 91 </span><span class="cm">/* Protocol wrong type for socket */</span>
<span class="linenos" data-line="95"></span><span class="cp">#define ENOPROTOOPT 92 </span><span class="cm">/* Protocol not available */</span>
<span class="linenos" data-line="96"></span><span class="cp">#define EPROTONOSUPPORT 93 </span><span class="cm">/* Protocol not supported */</span>
<span class="linenos" data-line="97"></span><span class="cp">#define ESOCKTNOSUPPORT 94 </span><span class="cm">/* Socket type not supported */</span>
<span class="linenos" data-line="98"></span><span class="cp">#define EOPNOTSUPP 95 </span><span class="cm">/* Operation not supported on transport endpoint */</span>
<span class="linenos" data-line="99"></span><span class="cp">#define EPFNOSUPPORT 96 </span><span class="cm">/* Protocol family not supported */</span>
<span class="linenos" data-line="100"></span><span class="cp">#define EAFNOSUPPORT 97 </span><span class="cm">/* Address family not supported by protocol */</span>
<span class="linenos" data-line="101"></span><span class="cp">#define EADDRINUSE 98 </span><span class="cm">/* Address already in use */</span>
<span class="linenos" data-line="102"></span><span class="cp">#define EADDRNOTAVAIL 99 </span><span class="cm">/* Cannot assign requested address */</span>
<span class="linenos" data-line="103"></span><span class="cp">#define ENETDOWN 100 </span><span class="cm">/* Network is down */</span>
<span class="linenos" data-line="104"></span><span class="cp">#define ENETUNREACH 101 </span><span class="cm">/* Network is unreachable */</span>
<span class="linenos" data-line="105"></span><span class="cp">#define ENETRESET 102 </span><span class="cm">/* Network dropped connection because of reset */</span>
<span class="linenos" data-line="106"></span><span class="cp">#define ECONNABORTED 103 </span><span class="cm">/* Software caused connection abort */</span>
<span class="linenos" data-line="107"></span><span class="cp">#define ECONNRESET 104 </span><span class="cm">/* Connection reset by peer */</span>
<span class="linenos" data-line="108"></span><span class="cp">#define ENOBUFS 105 </span><span class="cm">/* No buffer space available */</span>
<span class="linenos" data-line="109"></span><span class="cp">#define EISCONN 106 </span><span class="cm">/* Transport endpoint is already connected */</span>
<span class="linenos" data-line="110"></span><span class="cp">#define ENOTCONN 107 </span><span class="cm">/* Transport endpoint is not connected */</span>
<span class="linenos" data-line="111"></span><span class="cp">#define ESHUTDOWN 108 </span><span class="cm">/* Cannot send after transport endpoint shutdown */</span>
<span class="linenos" data-line="112"></span><span class="cp">#define ETOOMANYREFS 109 </span><span class="cm">/* Too many references: cannot splice */</span>
<span class="linenos" data-line="113"></span><span class="cp">#define ETIMEDOUT 110 </span><span class="cm">/* Connection timed out */</span>
<span class="linenos" data-line="114"></span><span class="cp">#define ECONNREFUSED 111 </span><span class="cm">/* Connection refused */</span>
<span class="linenos" data-line="115"></span><span class="cp">#define EHOSTDOWN 112 </span><span class="cm">/* Host is down */</span>
<span class="linenos" data-line="116"></span><span class="cp">#define EHOSTUNREACH 113 </span><span class="cm">/* No route to host */</span>
<span class="linenos" data-line="117"></span><span class="cp">#define EALREADY 114 </span><span class="cm">/* Operation already in progress */</span>
<span class="linenos" data-line="118"></span><span class="cp">#define EINPROGRESS 115 </span><span class="cm">/* Operation now in progress */</span>
<span class="linenos" data-line="119"></span><span class="cp">#define ESTALE 116 </span><span class="cm">/* Stale NFS file handle */</span>
<span class="linenos" data-line="120"></span><span class="cp">#define EUCLEAN 117 </span><span class="cm">/* Structure needs cleaning */</span>
<span class="linenos" data-line="121"></span><span class="cp">#define ENOTNAM 118 </span><span class="cm">/* Not a XENIX named type file */</span>
<span class="linenos" data-line="122"></span><span class="cp">#define ENAVAIL 119 </span><span class="cm">/* No XENIX semaphores available */</span>
<span class="linenos" data-line="123"></span><span class="cp">#define EISNAM 120 </span><span class="cm">/* Is a named type file */</span>
<span class="linenos" data-line="124"></span><span class="cp">#define EREMOTEIO 121 </span><span class="cm">/* Remote I/O error */</span>
<span class="linenos" data-line="125"></span><span class="cp">#define EDQUOT 122 </span><span class="cm">/* Quota exceeded */</span>
<span class="linenos" data-line="126"></span><span class="cp">#define ENOMEDIUM 123 </span><span class="cm">/* No medium found */</span>
<span class="linenos" data-line="127"></span><span class="cp">#define EMEDIUMTYPE 124 </span><span class="cm">/* Wrong medium type */</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="其他項目"><span id=".E5.85.B6.E4.BB.96.E9.A0.85.E7.9B.AE"></span>其他項目</h2></div>
<ul><li><a href="C%E6%A8%99%E6%BA%96%E5%87%BD%E5%BC%8F%E5%BA%AB" title="C標準函式庫">C標準函式庫</a></li>
<li>SCO v. IBM Linux lawsuit</li>
<li><a href="Stdio.h" title="Stdio.h">stdio.h</a> (for perror)</li>
<li><a href="String.h" title="String.h">string.h</a> (for strerror)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="外部連結"><span id=".E5.A4.96.E9.83.A8.E9.80.A3.E7.B5.90"></span>外部連結</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://archive.today/20121214181659/http://www.ussg.iu.edu/hypermail/linux/kernel/0312.2/1241.html">Linus Torvalds's commentary on errno.h</a></li>
<li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20090906043037/http://healconsulting.com/SCO/sco-letter.html#table">Commentary on the SCO Dec  2003 ABI Files letter, including a detailed analysis of the history of errno.h</a></li>
<li><a rel="nofollow" class="external text" href="http://www.groklaw.net/article.php?story=20040221192536920">Warren Toomey, of the UNIX Heritage Society, traces the history of errno.h in Unix and Linux</a>（<a rel="nofollow" class="external text" href="https://web.archive.org/web/20100505094953/http://www.groklaw.net/article.php?story=20040221192536920">页面存档备份</a>，存于<a href="%E4%BA%92%E8%81%94%E7%BD%91%E6%A1%A3%E6%A1%88%E9%A6%86" title="互联网档案馆">互联网档案馆</a>）</li>
<li><a rel="nofollow" class="external text" href="http://www.finalcog.com/c-error-codes-include-errno">Lists of errno values, both numeric and symbolic</a>（<a rel="nofollow" class="external text" href="https://web.archive.org/web/20090802070749/http://www.finalcog.com/c-error-codes-include-errno">页面存档备份</a>，存于<a href="%E4%BA%92%E8%81%94%E7%BD%91%E6%A1%A3%E6%A1%88%E9%A6%86" title="互联网档案馆">互联网档案馆</a>）</li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
    This article is issued from <a class="external text" title="Last edited on 2024-09-09" href="https://zh.wikipedia.org/wiki/?title=Errno.h&amp;oldid=84150814">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.zh">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
            </div>
          </main>
        </div>
      </div>
    </div>
     <script src="./_webp_/webpHandler.js"></script>
  

</body></html>