永发信息网

C语言中头文件errno.h是什么含义?包含些什么内容?

答案:5  悬赏:30  手机版
解决时间 2021-03-02 14:40
C语言中头文件errno.h是什么含义?包含些什么内容?
最佳答案
errno.h 是C语言C标准函式库里的标头档,定义了通过错误码来回报错误信息的宏。

errno本身是一个整型的全局变量,当使用errno的库函数,在执行出错时,只通过函数返回值返回一个表示出错的标识,如-1或NULL等,具体的出错原因会被赋值到errno中。通过查询errno可以确定具体的出错原因。

在errno.h中定义了一系列常见的宏,其形式为
#define EPERM 1
可以划分为
1 定义一个宏名,以E开头;
2 定义其值,为一个正整数;
3 一个注释区域,说明该错误号出现时的具体错误内容。

errno.h中的条目因不同编译器的实现而有所区别,一般在100~128条范围内,具体内容可以在编译器的系统标准头文件夹下查看对应文件。
全部回答
给你看看linux下的error.h

#ifndef _SYS_ERRNO_H_
#ifdef __cplusplus
extern "C" {
#endif
#define _SYS_ERRNO_H_
#include
#ifndef _REENT_ONLY
#define errno (*__errno())
extern int *__errno _PARAMS ((void));
#endif

extern __IMPORT _CONST char * _CONST _sys_errlist[];
extern __IMPORT int _sys_nerr;
#ifdef __CYGWIN__
extern __IMPORT const char * const sys_errlist[];
extern __IMPORT int sys_nerr;
#endif
#define __errno_r(ptr) ((ptr)->_errno)
#define EPERM 1
#define ENOENT 2
#define ESRCH 3
#define EINTR 4
#define EIO 5
#define ENXIO 6
#define E2BIG 7
#define ENOEXEC 8
#define EBADF 9
#define ECHILD 10
#define EAGAIN 11
#define ENOMEM 12
#define EACCES 13
#define EFAULT 14
#define ENOTBLK 15
#define EBUSY 16
#define EEXIST 17
#define EXDEV 18
#define ENODEV 19
#define ENOTDIR 20
#define EISDIR 21
#define EINVAL 22
#define ENFILE 23
#define EMFILE 24
#define ENOTTY 25
#define ETXTBSY 26
#define EFBIG 27
#define ENOSPC 28
#define ESPIPE 29
#define EROFS 30
#define EMLINK 31
#define EPIPE 32
#define EDOM 33
#define ERANGE 34
#define ENOMSG 35
#define EIDRM 36
#define ECHRNG 37
#define EL2NSYNC 38
#define EL3HLT 39
#define EL3RST 40
#define ELNRNG 41
#define EUNATCH 42
#define ENOCSI 43
#define EL2HLT 44
#define EDEADLK 45
#define ENOLCK 46
#define EBADE 50
#define EBADR 51
#define EXFULL 52
#define ENOANO 53
#define EBADRQC 54
#define EBADSLT 55
#define EDEADLOCK 56
#define EBFONT 57
#define ENOSTR 60
#define ENODATA 61
#define ETIME 62
#define ENOSR 63
#define ENONET 64
#define ENOPKG 65
#define EREMOTE 66
#define ENOLINK 67
#define EADV 68
#define ESRMNT 69
#define ECOMM 70
#define EPROTO 71
#define EMULTIHOP 74
#define ELBIN 75
#define EDOTDOT 76
#define EBADMSG 77
#define EFTYPE 79
#define ENOTUNIQ 80
#define EBADFD 81
#define EREMCHG 82
#define ELIBACC 83
#define ELIBBAD 84
#define ELIBSCN 85
#define ELIBMAX 86
#define ELIBEXEC 87
#define ENOSYS 88
#define ENMFILE 89
#define ENOTEMPTY 90
#define ENAMETOOLONG 91
#define ELOOP 92
#define EOPNOTSUPP 95
#define EPFNOSUPPORT 96
#define ECONNRESET 104
#define ENOBUFS 105
#define EAFNOSUPPORT 106
#define EPROTOTYPE 107
#define ENOTSOCK 108
#define ENOPROTOOPT 109
#define ESHUTDOWN 110
#define ECONNREFUSED
查看错误代码errno是调试程序的一个重要方法
定义了对errno()的参照,以及由系统调用设定的各种出错代号的define常数.
此定义符合XENIX标准和SYSTEM V标准。
在LINUX和Windows中都可以使用。
查看错误代码errno是调试程序的一个重要方法。当linuc C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么a3+a11=2a7?
点点星光点点愁,点点落寞伴鱼游。点点繁星当
求stm8s105芯片控制tm1638驱动数码管的C程序
国服第一味这个地址在什么地方,我要处理点事
谁能介绍福建高仿耐克‘阿迪’卡帕的批发商给
人的十二肋骨在什么位置
在细胞学说创立的过程中,有很多科学家作出了
金孔雀温泉旅游度假村在哪里啊,我有事要去这
简述行政法的作用
第一次办港澳通行证,能在网上办理吗?
刘湛秋的简介
现代悦动前拖车钩孔在哪里
现在广州中心城区是不是越秀区、海珠区、荔湾
运用整体数学思想方法的好处
徐文栋这个名字的含义
推荐资讯
在△ABC中,AB=AC=10cm,∠A=60°,则BC=____
根据达尔文的自然选择学说,始祖马进化成现代
乐视por3如何拦截骚扰电话
请问这种对子号有收藏价值吗
马来西亚购票 busonlineticket 网站 是真的还
大子塘地址在哪,我要去那里办事
地下城堡月光宝珠怎么获得 刷月光宝珠技巧使
弯曲的一条线是不是线段
VIRTUOSO PIANO FREE 3怎么样
一个女人开始抱怨自己男朋友时离分手有多远
北京印刷学院优势专业排名 最好的热门专业有
39.6-3x=3.24X5
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?