如何识别无效的内存地址?
发布时间:2020-12-13 23:53:57 所属栏目:Linux 来源:网络整理
导读:我想知道是否有某种方法可以在特定平台上识别无效的内存地址(x86 64位,对于我的情况).在取消引用地址并抛出SIGILL / SIGSEGV错误之前,我需要它来捕获程序. 解决方法 一般来说,你不能.无效地址看起来与有效地址非常相似.唯一可识别的无效地址是NULL. 因此,在
我想知道是否有某种方法可以在特定平台上识别无效的内存地址(x86 64位,对于我的情况).在取消引用地址并抛出SIGILL / SIGSEGV错误之前,我需要它来捕获程序.
解决方法
一般来说,你不能.无效地址看起来与有效地址非常相似.唯一可识别的无效地址是NULL.
因此,在使用它们之前,请确保(因此编写代码)指针有效或为NULL.总是.没有办法解决这个问题. 您可以使用工具来检测指针可能无效的位置(例如,未初始化,已释放等),但这不是您所要求的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |