其實,我1樓給出MSDN的解釋已經很清楚了:malloc()將會獲得不少於申請的空間,但這個塊也可能大於所申請的,因爲需要對齊和維護一些信息(alignment and maintenance)。那段英文并不複雜,關鍵部分也描紅了。測試結果衹是證實了這段話而已。btw: 那個需要維護的信息,我猜可能是塊大小,因爲用free()釋放的内存不需要再給出尺寸了,系統怎麽知道原來申請的是多少,那一定是在這空間中有地方儲存起來的。
1樓的代碼,申請的是1000字節,但實際上是1024字節,不是申請多少給多少,也不是4096。
[ 本帖最后由 TonyDeng 于 2015-2-14 11:57 编辑 ]
1樓的代碼,申請的是1000字節,但實際上是1024字節,不是申請多少給多少,也不是4096。
[ 本帖最后由 TonyDeng 于 2015-2-14 11:57 编辑 ]
授人以渔,不授人以鱼。