任何人都可以告诉我,是否有办法可以强制其中包含某些特定信息的段错误。强制段错误可以通过abort(),call来完成。但我需要一些东西 像abort(ptr),其中ptr是一个指针,告诉实际的内存,其中一些腐败开始。
感谢, Kapil Upadhayay
答案 0 :(得分:0)
你的问题很不清楚。核心转储包含整个过程的内存快照,因此已经包含您希望它包含的信息。
如果您想更轻松地查找信息,可以引入全局信息,例如
void *a_corrupt_ptr; // global
void some_func() {
...
if (the_pointer_has_been_corrupted(ptr)) {
a_corrupt_ptr = ptr;
abort();
}
然后检查调试器中的a_corrupt_ptr
。
或者您可以在致电abort()
之前打印该值。