当前位置:嗨网首页>书籍在线阅读

10-练习

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

6.9 练习

6-1.  编译程序清单6-1中的程序(mem_segments.c),使用ls -l命令显示可执行文件的大小。虽然该程序包含一个大约10MB的数组,但可执行文件大小要远小于此,为什么?

6-2.  编写一个程序,观察当使用longjmp()函数跳转到一个已经返回的函数时会发生什么?

6-3.   使用getenv()函数、putenv()函数,必要时可直接修改environ,来实现setenv()函数和unsetenv()函数。此处的unsetenv()函数应检查是否对环境变量进行了多次定义,如果是多次定义则将移除对该变量的所有定义(glibc版本的unsetenv()函数实现了这一功能)。

①译者注:例如,以寄存器取代变量。

②译者注:\0。

③译者注:请读者仔细思考C语言中数组与指针的对等关系。

④译者注:即上文所谓静态作用域。