我看着GetAdaptersInfo()样品中MSDN:使用GetAdaptersInfo()时,Malloc只有一次适用于所有适配器?
http://msdn.microsoft.com/en-us/library/aa365917%28VS.85%29.aspx
,注意到的是,虽然样品尝试通过所有适配器迭代,它仅分配用于第一个存储器。
这是一个错误?
如果不是,为什么不呢?所有适配器都具有相同的信息大小吗?
为了进一步澄清我的问题:我理解了在样本中双重调用malloc的作用。我不明白的是为什么在循环外之外。如果系统中只有一个适配器,当然没有问题。但是当有多个适配器时会发生什么?这是一个错误?
谢谢。
我没有看到任何问题。循环只遍历它已经获得的适配器;它不是试图获得更多。通常情况下,由于内容在运行时可能会发生变化,因此循环遍历分配,但在枚举时不太可能将更多适配器添加到系统中,因此只需使用两个分配即可。 – Luke 2010-10-20 21:56:18