📄 errno.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3O//DTD W3 HTML 2.0//EN"><!-- This collection of hypertext pages is Copyright 1995-2005 by Steve Summit. --><!-- Content from the book "C Programming FAQs: Frequently Asked Questions" --><!-- (Addison-Wesley, 1995, ISBN 0-201-84519-9) is made available here by --><!-- permission of the author and the publisher as a service to the community. --><!-- It is intended to complement the use of the published text --><!-- and is protected by international copyright laws. --><!-- The on-line content may be accessed freely for personal use --><!-- but may not be published or retransmitted without explicit permission. --><!-- --><!-- this page built Sat Dec 24 21:47:47 2005 by faqproc version 2.7 --><!-- from source file misctechn.sgml dated Sat Sep 28 22:23:36 2002 --><!-- corresponding to FAQ list version 4.0 --><html><!-- Mirrored from c-faq.com/misc/errno.html by HTTrack Website Copier/3.x [XR&CO'2008], Sat, 14 Mar 2009 07:59:04 GMT --><head><meta name=GENERATOR content="faqproc"><title>Question 20.4</title><link href="argv.html" rev=precedes><link href="binaryfiles.html" rel=precedes><link href="index.html" rev=subdocument></head><body bgcolor="#ffffff"><a href="argv.html" rev=precedes><img src="../images/buttonleft.gif" alt="prev"></a><a href="index.html" rev=subdocument><img src="../images/buttonup.gif" alt="up"></a><a href="binaryfiles.html" rel=precedes><img src="../images/buttonright.gif" alt="next"></a> <a href="../index-2.html"><img src="../images/buttontop.gif" alt="top/contents"></a><a href="../search.html"><img src="../images/buttonsrch.gif" alt="search"></a><hr><p><!-- qbegin --><h1>comp.lang.c FAQ list<font color=blue>·</font><!-- qtag -->Question 20.4</h1><p><font face=Helvetica size=8 color=blue><b>Q:</b></font>What's the right wayto use <TT>errno</TT>?</p><p><hr><p><font face=Helvetica size=8 color=blue><b>A:</b></font>In general,you should detect errors by checking return values,and use <TT>errno</TT> only to distinguish among the various causes of an error,such as ``File not found''or ``Permission denied''.(Typically, you use<TT>perror</TT> or<TT>strerror</TT>to print thesediscriminatingerror messages.)It's only necessary to detect errors with <TT>errno</TT>when a function does not have a unique, unambiguous,out-of-banderror return(i.e. because all of its possible return values are valid;one example is <TT>atoi</TT>).In these cases(and in these cases only;check the documentationto be surewhethera function allows this),you can detect errors by setting <TT>errno</TT> to 0,calling the function,then testing <TT>errno</TT>.(Setting <TT>errno</TT> to 0 first is important,asno library function ever doesthat for you.)</p><p>To make error messages useful,they should include all relevant information.Besides the <TT>strerror</TT>text derived from <TT>errno</TT>,it may also be appropriate to print the name of the program,the operation which failed(preferably in terms which will be meaningful to the user),the name of the file for which the operation failed,and,if some input file(script or source file)is being read,the name andcurrentline number of that file.</p><p>See also question <a href="../stdio/printferrno.html">12.24</a>.</p><p>References:ISO Sec. 7.1.4, Sec. 7.9.10.4, Sec. 7.11.6.2<br>CT&P Sec. 5.4 p. 73<br>PCS Sec. 11 p. 168, Sec. 14 p. 254<br></p><!-- aend --><p><hr><a href="argv.html" rev=precedes><img src="../images/buttonleft.gif" alt="prev"></a><a href="index.html" rev=subdocument><img src="../images/buttonup.gif" alt="up"></a><a href="binaryfiles.html" rel=precedes><img src="../images/buttonright.gif" alt="next"></a> <a href="../questions.html"><img src="../images/buttontop.gif" alt="contents"></a><a href="../search.html"><img src="../images/buttonsrch.gif" alt="search"></a><br><!-- lastfooter --><a href="../about.html">about this FAQ list</a> <a href="../eskimo.html">about eskimo</a> <a href="../search.html">search</a> <a href="../feedback.html">feedback</a> <a href="copyright.html">copyright</a><p>Hosted by<a href="http://www.eskimo.com/"><img src="../../www.eskimo.com/img/link/eskitiny.gif" alt="Eskimo North"></a></body><!-- Mirrored from c-faq.com/misc/errno.html by HTTrack Website Copier/3.x [XR&CO'2008], Sat, 14 Mar 2009 07:59:04 GMT --></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -