Q7.1 在Intel X86系统上,使用Linux,如果执行一个输出“hellow world"的程序但不调用exit或者return,则程序返回的代码为13,(用shell检查),解释其原因/
Q7.2 图7.3中的printf 函数的家国何时才能真正输出?
Q.7.3 是否有方法不使用(a )参数传递,(b)全局变量这两种方法,将main 中的参数argc和argv传递给它所调用的其他函数?
Q,7.4 有些 UNIX系统实现中执行程序时访问不到其数据段的0单元,这是一种有意的安排还是什么?
Q,7.5 用C语言的typedef为终止处理程序定义了一个新的数据类型Exitfunc,使用该类型修改atexit的原型。
Q 7.6 如果使用calloc分配一个long型的数组,数组的初始值是否为0?如果使用calloc分配一个指针数组,数组的初始值是否为空指针?
Q7.7 在7.6结尾出size命令的输出结果中,为什么没有给出堆栈的大小?
Q7.8为什么7.7接种两个文件的大小(879443 he 8378)不等于他们各自文本和数据大小的和?
Q 7.9 为什么7.7节中对于一个简单的程序,使用共享库以后可执行文件的大小变化如此巨大?
Q7.10 在7.10节中我们已经说明为什么不能将一个指针返回一个自动变量,下面的程序是否正确?
int
f1(int val)
{
int num = 0;
int *ptr = #
if ( val == 0 ) {
int val;
vlan = 5;
ptr = &val;
}
return ( *ptr +1);
}
原文:http://bobo5620301.blog.51cto.com/946576/1717021