Steve,
谢谢你仔细的阅读和发现,答复如下。
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技术内幕》
阅读(4814) | 评论(2) | 转发(0) |