版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、附录B其他源代码B.1头文件正文中的大多数程序都包含头文件 ourhdr.h,这示于程序B-1中。其中定义了常数(例如 MAXLINE)和我们自编函数的原型。因为大多数程序序包含下列头文件: 、(其中有exit函数原型),以及(其中包含所有标准UNIX函数的原型),所以ourhdr.h包含了这些系统头文件,同时还包含了。这样就减少了本书正文中所有程序的长度。程序B-1 头文件ourhdr.h附录B 其他源代码513514UNIX环境高级编程程序中先包括一般系统头文件,然后再包括ourhdr h,这样就能解决某些系统之间的差别(例如 4.3BSD Reno中没有定义SIG_ERR),并且也可定义
2、一些我们的函数原型,而这些仅当包括一般系统头文件之后才是需要的。当在原型中引用未定义的结构时,某些 ANSI C编译程序会认为不正常。B.2标准出错处理例程我们提供了两个出错处理例程,它们可用于本书中大多数实例以处理各种出错情况。一个例程以err_开头,并向标准出错文件输出一条出错消息。另一个例程以 log_开头,用于精灵进程(见第13章),它们多半没有控制终端。提供了这些出错处理函数后,只要在程序中写一行代码就可以进行出错处理,例如i f (出错条件 )e r r _ d u m p带(任意参数的 p rf格式) ;这样也就不再需要使用下列代码:i f (出错条件 ) c h a rb u
3、f f 2 0 0 ;s p rf ( bu f f , 带任意参数的p r p e r r o r ( b u f f ) ;a bo r t () ;f格式) ;我们的出错处理函数使用了ANSI C的变长参数表功能。其详细说明见Kernighan和Ritchie1998的7.3节。应当注意的是这一 ANSI C功能与早期系统(例如 SVR3和4.3BSD)提供的 varargs功能不同。宏的名字相同,但更改了某些宏的参数。表B-1列出了各个出错处理函数之间的区别。表B-1 标准出错处理函数程序B-2包括了输出至标准出错文件的各个出错处理函数。程序B-2 输出至标准出错文件的出错处理函数函数
4、s t r e r r o r ( e r r n o ) ?终止?E r r _ r e t是r e t u r n ;E r r _ s y s是e x i t ( 1 ) ;E r r _ d u m p是a b o r t ( ) ;E r r _ m s g否r e t u r n ;E r r _ q u i t否e x i t( 1 ) ;L o g _ r e t是r e t u r n ;L o g _ s y s是e x i t ( 2 ) ;L o g _ m s g否r e t u r n ;L o g _ q u i t否e x i t ( 2 ) ;附录B 其他源代码515516UNIX环境高级编程程序B-3包括了各log_出错处理函数。若进程不以精灵进程方式进行,那么调用者应当定义变量debug,并将其设置为非 0值。在这种情况下,出错消息被送至标准出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业社会责任履行行为制度
- 老年衰弱研究进展2026
- 物流运输质量管理流程
- 2026-2030实木橱柜产业园区定位规划及招商策略咨询报告
- 2025年事业单位招聘考试审计类综合能力测试卷及答案
- 2026年软件开发合作协议(区块链技术)
- 2026年区块链供应链管理合同
- 养老院2025年智能服药提醒协议
- 2026农业科技行业分析市场规模发展趋势报告
- 2026农业种植业市场供需现状及投资价值评估规划研究报告
- 2026年交管12123驾照学法减分完整版试卷附答案详解(轻巧夺冠)
- 2025-2030中国短肽型肠内营养剂行业市场现状分析及竞争格局与投资发展研究报告
- (二模)呼和浩特市2026年高三年级第二次模拟考试生物试卷(含答案)
- 2026年咸阳高新区管委会及下属公司招聘(32人)笔试参考题库及答案解析
- 水利水电工程单元工程施工质量检验表与验收表(SLT631.5-2025)
- 等效声级计算表
- 电气施工方案罗湖二线插花地项目
- AS9120B程序文件一整套
- 门脉高压性消化道出血的介入治疗
- 项目监理机构人员配置标准(试行)
- VarianVS氦质谱检漏仪简介课件
评论
0/150
提交评论