我找到了一些样例代码,看起来像这样:
这里使用SecureZeroMemory()有什么原因吗?为什么不直接使用`
addrinfo hints;
SecureZeroMemory(&hints, sizeof(hints));
这里使用SecureZeroMemory()有什么原因吗?为什么不直接使用`
memset
`?addrinfo hints = {0};
示例代码: http://msdn.microsoft.com/zh-cn/library/windows/desktop/ms742203(v=vs.85).aspx
这是一个指向微软官方文档的链接,其中包含了与Windows桌面应用程序相关的示例代码。通过阅读这些示例代码,您可以更好地理解如何编写高效、可靠的应用程序。
memset
或依赖于C++的默认清零行为。 - Davegetaddrinfo
的文档确实指出addrinfo
的四个成员必须为零,否则调用将失败,但是没有明显的理由说明为什么= {0};
不同样有效。我猜测对于代码示例来说,使用SecureZeroMemory
调用比= {0};
更加自解释。 - T.C.