c++ - try/catch block 失败并且应用程序崩溃

标签 c++ visual-c++

我有以下代码

try { 
    clientService.sin_family = AF_INET;
    clientService.sin_addr = *((LPIN_ADDR)*hostEntry->h_addr_list); //fails
    clientService.sin_port = htons(port);
    }

catch (...) { return; }

如果我禁用我的网络适配器,我的应用程序就会崩溃。这样的错误不应该被捕获吗?

最佳答案

这只是一个猜测,但您可能在 gethostbyname 返回后没有检查 hostEntry 并且您得到了一个 NULL 指针。使用前检查它是否为 null。

关于c++ - try/catch block 失败并且应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4361202/

相关文章:

c# - 如何自动(从命令行)安装 Visual Studio Build Tools 构建环境,适用于 C++、.NET、C# 等

c++ - WinAPI 向后/向前导航

c++ - 构造函数主体前的冒号是否表示继承

android - For IOS 中的 C++ 网络库

c++ - 维护 32/64 位构建的通用源代码并使用正确的库

c++ - 如何在 Visual Studio 解决方案构建期间限制并行 cl.exe 进程的数量?

c++ - Common Dialogs DLL 无法手动加载

c++ - cpp 映射作为函数参数获取警告信息 "discards qualifiers"

c++ - 通过引用作为 Int 返回

c++ - (V)C++ (2010) 正则表达式, "recursive captures"