关于一道习题的思考
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于一道习题的思考相关的知识,希望对你有一定的参考价值。
K&R书中习题5-7为:
重写函数readlines, 将输入的文本行存储到由main函数提供的一个数组中,而不是存储到调用alloc分配的的存储空间中。该函数的运行速度比改写前快多少?
本人参考the C answer book中给出的解答,改写readlines, 经测试编译后与原程序在处理速度上没有差别。
一个是调用 malloc 动态分配内存,一个是用固定分配的内存,本来期望修改后程序的处理速度会大大提高。分析一下可知:sortline 程序最复杂的部分为文本排序,应占用大部分处理时间。而排序操作用于指向输入行的指针, 与输入行的存储方式无关,因而改写前后差别不大。
以上是关于关于一道习题的思考的主要内容,如果未能解决你的问题,请参考以下文章