我有以下代码
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/