- 浏览: 609737 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
月光杯:
问题解决了吗?
Exceptions in HDFS -
iostreamin:
神,好厉害,这是我找到的唯一可以ac的Java代码,厉害。
[leetcode] word ladder II -
standalone:
One answer I agree with:引用Whene ...
How many string objects are created? -
DiaoCow:
不错!,一开始对这些确实容易犯迷糊
erlang中的冒号 分号 和 句号 -
standalone:
Exception in thread "main& ...
one java interview question
查看错误代码errno是调试程序的一个重要方法。当linuc C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。在实际编程中用这一招解决了不少原本看来莫名其妙的问题。比较麻烦的是每次都要去linux源代码里面查找错误代码的含义,现在把它贴出来,以后需要查时就来这里看了。 以下来自linux 2.4.20-18的内核代码中的/usr/include/asm/errno.h #ifndef _I386_ERRNO_H #define _I386_ERRNO_H #define EPERM 1 /* Operation not permitted */ #define ENOENT 2 /* 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 /* Arg list too long */ #define ENOEXEC 8 /* Exec format error */ #define EBADF 9 /* Bad file number */ #define ECHILD 10 /* No child processes */ #define EAGAIN 11 /* Try again */ #define ENOMEM 12 /* Out of memory */ #define EACCES 13 /* Permission denied */ #define EFAULT 14 /* Bad address */ #define ENOTBLK 15 /* Block device required */ #define EBUSY 16 /* Device or resource busy */ #define EEXIST 17 /* File exists */ #define EXDEV 18 /* Cross-device link */ #define ENODEV 19 /* No such device */ #define ENOTDIR 20 /* Not a directory */ #define EISDIR 21 /* Is a directory */ #define EINVAL 22 /* Invalid argument */ #define ENFILE 23 /* File table overflow */ #define EMFILE 24 /* Too many open files */ #define ENOTTY 25 /* Not a typewriter */ #define ETXTBSY 26 /* Text file busy */ #define EFBIG 27 /* File too large */ #define ENOSPC 28 /* No space left on device */ #define ESPIPE 29 /* Illegal seek */ #define EROFS 30 /* Read-only file system */ #define EMLINK 31 /* Too many links */ #define EPIPE 32 /* Broken pipe */ #define EDOM 33 /* Math argument out of domain of func */ #define ERANGE 34 /* Math result not representable */ #define EDEADLK 35 /* Resource deadlock would occur */ #define ENAMETOOLONG 36 /* File name too long */ #define ENOLCK 37 /* No record locks available */ #define ENOSYS 38 /* Function not implemented */ #define ENOTEMPTY 39 /* Directory not empty */ #define ELOOP 40 /* Too many symbolic links encountered */ #define EWOULDBLOCK EAGAIN /* Operation would block */ #define ENOMSG 42 /* No message of desired type */ #define EIDRM 43 /* Identifier removed */ #define ECHRNG 44 /* Channel number out of range */ #define EL2NSYNC 45 /* Level 2 not synchronized */ #define EL3HLT 46 /* Level 3 halted */ #define EL3RST 47 /* Level 3 reset */ #define ELNRNG 48 /* Link number out of range */ #define EUNATCH 49 /* Protocol driver not attached */ #define ENOCSI 50 /* No CSI structure available */ #define EL2HLT 51 /* Level 2 halted */ #define EBADE 52 /* Invalid exchange */ #define EBADR 53 /* Invalid request descriptor */ #define EXFULL 54 /* Exchange full */ #define ENOANO 55 /* No anode */ #define EBADRQC 56 /* Invalid request code */ #define EBADSLT 57 /* Invalid slot */ #define EDEADLOCK EDEADLK #define EBFONT 59 /* Bad font file format */ #define ENOSTR 60 /* Device not a stream */ #define ENODATA 61 /* No data available */ #define ETIME 62 /* Timer expired */ #define ENOSR 63 /* Out of streams resources */ #define ENONET 64 /* Machine is not on the network */ #define ENOPKG 65 /* Package not installed */ #define EREMOTE 66 /* Object is remote */ #define ENOLINK 67 /* Link has been severed */ #define EADV 68 /* Advertise error */ #define ESRMNT 69 /* Srmount error */ #define ECOMM 70 /* Communication error on send */ #define EPROTO 71 /* Protocol error */ #define EMULTIHOP 72 /* Multihop attempted */ #define EDOTDOT 73 /* RFS specific error */ #define EBADMSG 74 /* Not a data message */ #define EOVERFLOW 75 /* Value too large for defined data type */ #define ENOTUNIQ 76 /* Name not unique on network */ #define EBADFD 77 /* File descriptor in bad state */ #define EREMCHG 78 /* Remote address changed */ #define ELIBACC 79 /* Can not access a needed shared library */ #define ELIBBAD 80 /* Accessing a corrupted shared library */ #define ELIBSCN 81 /* .lib section in a.out corrupted */ #define ELIBMAX 82 /* Attempting to link in too many shared libraries */ #define ELIBEXEC 83 /* Cannot exec a shared library directly */ #define EILSEQ 84 /* Illegal byte sequence */ #define ERESTART 85 /* Interrupted system call should be restarted */ #define ESTRPIPE 86 /* Streams pipe error */ #define EUSERS 87 /* Too many users */ #define ENOTSOCK 88 /* Socket operation on non-socket */ #define EDESTADDRREQ 89 /* Destination address required */ #define EMSGSIZE 90 /* Message too long */ #define EPROTOTYPE 91 /* Protocol wrong type for socket */ #define ENOPROTOOPT 92 /* Protocol not available */ #define EPROTONOSUPPORT 93 /* Protocol not supported */ #define ESOCKTNOSUPPORT 94 /* Socket type not supported */ #define EOPNOTSUPP 95 /* Operation not supported on transport endpoint */ #define EPFNOSUPPORT 96 /* Protocol family not supported */ #define EAFNOSUPPORT 97 /* Address family not supported by protocol */ #define EADDRINUSE 98 /* Address already in use */ #define EADDRNOTAVAIL 99 /* Cannot assign requested address */ #define ENETDOWN 100 /* Network is down */ #define ENETUNREACH 101 /* Network is unreachable */ #define ENETRESET 102 /* Network dropped connection because of reset */ #define ECONNABORTED 103 /* Software caused connection abort */ #define ECONNRESET 104 /* Connection reset by peer */ #define ENOBUFS 105 /* No buffer space available */ #define EISCONN 106 /* Transport endpoint is already connected */ #define ENOTCONN 107 /* Transport endpoint is not connected */ #define ESHUTDOWN 108 /* Cannot send after transport endpoint shutdown */ #define ETOOMANYREFS 109 /* Too many references: cannot splice */ #define ETIMEDOUT 110 /* Connection timed out */ #define ECONNREFUSED 111 /* Connection refused */ #define EHOSTDOWN 112 /* Host is down */ #define EHOSTUNREACH 113 /* No route to host */ #define EALREADY 114 /* Operation already in progress */ #define EINPROGRESS 115 /* Operation now in progress */ #define ESTALE 116 /* Stale NFS file handle */ #define EUCLEAN 117 /* Structure needs cleaning */ #define ENOTNAM 118 /* Not a XENIX named type file */ #define ENAVAIL 119 /* No XENIX semaphores available */ #define EISNAM 120 /* Is a named type file */ #define EREMOTEIO 121 /* Remote I/O error */ #define EDQUOT 122 /* Quota exceeded */ #define ENOMEDIUM 123 /* No medium found */ #define EMEDIUMTYPE 124 /* Wrong medium type */ #endif
发表评论
-
std::map
2017-08-06 22:41 611std::map<char,int> my ... -
lost on Py_DECREF/INCREF when handling PyList_Append in Python C extension
2015-11-03 21:41 1055The main hint is in the docs, i ... -
An Example of Using std::tr1::bind
2014-03-10 16:49 1520#include <iostream> #i ... -
c++中的virtual inheritance
2014-01-27 10:20 800http://stackoverflow.com/questi ... -
Java的Generics和c++的Template到底有什么不同?
2012-12-27 16:21 3290先了解Java的Generics: 根据Java的文档,Jav ... -
Calculating Permutations and Job Interview Questions
2011-06-18 17:44 948http://www.bearcave.com/random_ ... -
字符串指针、字符数组的sizeof和strlen结果
2010-09-27 08:36 1455int main(){ char *p1=" ... -
code snippet
2010-09-27 08:31 921char temp[3]; char temp2[3]; ... -
虚继承
2010-09-26 09:03 954http://www.cppblog.com/franksun ... -
调整堆的算法
2010-09-25 10:34 1134Begin adjustHeap(A[], i) // He ... -
multiset usage as heap
2010-09-24 21:37 1437Middle number There is a seque ... -
虚函数表又是怎样实现的?
2010-09-20 22:01 1311每个含有虚函数的类 ... -
正整数分解算法
2010-09-19 16:56 4027问题:将以正整数n表 ... -
异或运算法则
2010-09-14 09:47 21881. a ^ b = b ^ a 2 ... -
常量字符串为什么位于静态存储区
2010-09-13 22:41 1250http://hi.baidu.com/%D0%C7%BB%F ... -
How to use fallocate system call
2010-08-07 22:19 3424/* * fallocate - utility to u ... -
Test performance of allocating a zeroed file via various methods
2010-08-07 22:09 1098/* * Test performance of a ... -
how to reverse the word sequence in a sentence?
2010-07-06 22:01 1224For example, "Welcome ... -
c++ dynamic binding
2010-07-06 21:20 892Good tutorial about c++ dynamic ... -
deep copy & shallow copy
2010-07-06 20:57 1116A shallow copy of an object c ...
相关推荐
Linux errno.h 文件错误号说明 errno.h 文件是 Linux 系统中一个非常重要的头文件,它定义了一系列的错误号,每个错误号对应着一个特定的错误信息。了解这些错误号对于 Linux 系统的开发和调试至关重要。 在 Linux...
errno.h 是C语言C标准函式库里的标头档,定义了通过错误码来回报错误资讯的宏.
标签中的"fcntl.h_wince direct.h_in_ce wince_errno.h"暗示了`errno.h`的使用,这是一个定义了错误码的头文件,当函数调用失败时,`errno`变量会存储对应的错误代码。在Windows CE中,虽然`errno`仍然可用,但其...
#include <errno.h> #include <math.h> #include <pthread.h> #include <semaphore.h> #include <sys/socket.h> #include <netdb.h> #include <netinet/in.h> #include <arpa/inet.h> /* Simplifies calls to bind...
│ errno.h │ errorrep.h │ errors.h │ evcode.h │ excpt.h │ exdisp.h │ exdispid.h │ fcntl.h │ fenv.h │ float.h │ fltdefs.h │ gdiplus.h │ getopt.h │ gettext-po.h │ glob.h │ gmon.h │ ...
C signal.h errno.h netdb.h setjmp.h signal.h string.hC signal.h errno.h netdb.h setjmp.h signal.h string.hC signal.h errno.h netdb.h setjmp.h signal.h string.h
11. `<errno.h>`:错误码定义,通过`errno`全局变量获取错误信息。 这些头文件不仅限于以上列举的,实际上还有很多其他头文件,涵盖了网络编程(如`<netdb.h>`、`<arpa/inet.h>`)、系统调用(如`<sys/syscall.h>`...
errno 变量是通过 include errno.h 头文件来定义的,errno 的值是一个整数,它的值可以通过查看 errno.h 中的宏定义来推测出错的原因。 在 Linux 中,当 C API 函数发生异常时,会将 errno 变量赋一个整数值,表示...
#include <errno.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> #define MAX_HOST_LEN 32 /* 主机名最大长度 */ #define MAX...
* <errno.h> : Error Codes Reported by (Some) Library Functions * <float.h> : Implementation-defined Floating-Point Limits * <limits.h> : Implementation-defined Limits * <locale.h> : Locale-...
#include <errno.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> #define MAX_HOST_LEN 32 /* 主机名最大长度 */ #define MAX...
`crtdefs.h`会定义一些预处理器宏,如`__cdecl`和`__stdcall`来指定函数调用约定,还有一些全局变量的声明,比如`errno`,用于存储错误代码。它还包含了对`_EXCEPTION_DISPOSITION`枚举类型的定义,这是处理异常时...
#include <errno.h> #include <getopt.h> #include <limits.h> #include <libgen.h> #include <locale.h> #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> ...
<errno.h > 出错码 <fcntl.h > 文件控制 <float.h > 浮点常数 <signal.h > 信号 <stdarg.h > 可变参数表 <stddef.h > 标准定义 <stdio.h > 标准I/O库 <stdlib.h > 公用函数 <string.h > 字符串操作 ......
#include <errno.h> //定义错误码 #include <string.h>//字符串处理 #include <netdb.h> #include <sys/types.h>//send();recv(); #include <netinet/in.h>//htons(); #include <sys/socket.h>//send();recv(); #...
#include <linux/errno.h> #include <linux/miscdevice.h> #include <linux/fcntl.h> #include <linux/init.h> #include <linux/delay.h> #include <linux/proc_fs.h> #include <linux/workqueue.h> #include ...
#include <errno.h> //定义错误码 #include <float.h> //浮点数处理 #include <fstream.h> //文件输入/输出 #include <iomanip.h> //参数化输入/输出 #include <iostream.h> //数据流输入/输出 #include ...
2. `mysql_error.h`:这个头文件定义了错误处理相关的函数和宏,如`mysql_errno()`返回最后一次操作的错误代码,`mysql_error()`返回对应的错误信息字符串,以及`MYSQL_ERRNO_*`常量,表示预定义的错误编号。...
在<math.h>中也提到了数学函数返回值的错误码处理,通过全局变量errno来标识错误类型。例如,当计算结果为非数字NaN时,函数会设置errno为EDOM,而当结果溢出时,errno会被设置为ERRANGE。 最后,<math.h>提供了...