UNIX环境高级编程习题——第七章
2017-08-27 07:37
281 查看
7.1 在Intel x86系统上,使用Linux,如果执行一个输出“hello world”的程序但不调用exit或return,则程序的返回代码13(用shell检查),解释其原因:
7.2 图7-3中的printf函数的结果何时才被真正输出?
7.5 C语言的typedef为处理终止程序定义了一个新的数据类型 Exitfunc,使用该类型修改atexit的原型
7.7 在7.6节结尾处size命令输出结果中,为什么没有给出堆和栈的大小?
原因:printf的返回值变为main函数的返回值,不同的系统上编译此类程序由不同的终止码。
7.2 图7-3中的printf函数的结果何时才被真正输出?
当程序处于交互运行方式时,标准输出通常处于行缓冲方式,所以当输出换行符时,上次的结果才被真正输出。如果标准输出被定向到一个文件,而标准输出处于全缓冲方式,则当标准I/O清理操作执行时,结果才真正被输出。
7.5 C语言的typedef为处理终止程序定义了一个新的数据类型 Exitfunc,使用该类型修改atexit的原型
typedef void Exitfunc(void); int atexit(Exitfunc *func);
7.7 在7.6节结尾处size命令输出结果中,为什么没有给出堆和栈的大小?
只有通过exec函数执行一个程序时,才会分配堆和栈。
相关文章推荐
- unix环境高级编程第七章习题的一些拙见
- UNIX环境高级编程之第5章:标准I/O库-习题
- UNIX环境高级编程习题——第二章
- UNIX环境高级编程学习之第七章进程环境-存储器分配malloc
- UNIX环境高级编程习题之第三章第二题
- UNIX环境高级编程学习之第七章进程环境-环境变量表读取/添加/修改/删除
- <UNIX环境高级编程>--第七章
- unix环境高级编程第三章习题的一些拙见
- UNIX环境高级编程之第4章:文件和目录-习题
- Unix环境高级编程 第三章习题答案
- UNIX环境高级编程习题——第三章
- Unix环境高级编程习题3.2
- UNIX环境高级编程之第8章:进程控制-习题
- UNIX环境高级编程习题——第一章
- UNIX环境高级编程习题 4.11 myftw改造
- UNIX环境高级编程:第七章:进程环境
- UNIX环境高级编程习题——第五章
- UNIX环境高级编程习题——第八章
- UNIX环境高级编程之第4章:文件和文件夹-习题
- UNIX环境高级编程习题3.2 自己实现dup2函数功能