谢谢你仔细的阅读和发现,答复如下。
From: quntmec@hotmail.com
To: qf.hao@hotmail.com
Subject: 关于《UNIX技术内幕》的勘误及遇到的问题_2
Date: Thu, 29 Sep 2011 22:59:17 +0800
郝先生,
在3.5.2节“用户内存管理”里,有关 alloc(nbytes) 函数(C代码),根据52页左上角的图,allocs[1]里的值已变成 na。请问,程序里那个语句实现了将 na 赋值了给 allocs[1] ?
郝庆丰:在第51页图3-31上面一段,记新分配地址是na...。因为alloct=&allocs[1], *alloct=allocs[1],
此外,勘误如下:
页 | 段 | 行 | 内容 |
45 | 3 | 1 | mree(应为mfree) |
48 | 3 | 程序里的: char **allocp &allocs[1]; char **alloct & allocs[1]; (缺少 = ,即应为char **allocp =&allocs[1]; char **alloct = &allocs[1];) | |
51 | 9 | 3 | q = &alloc[0];(应为&allocs[0];且从这里起至本章末还有几个这样的同样问题) |
郝庆丰:P45: 对。
P48: 这里的C代码只是示意性的,因为都用/注释掉了,后面的汇编才是真正的源程序。当然,如果真的用C代码的话,是应该如你所说加=。
P51: 对。
Steve
《返璞归真--UNIX技术内幕》