在 C 语言中,可以使用诸如this one之类的方法将 -1 值(例如 0xFFFFFFFF)填充到指针中,并期望在运行时永远不会分配这样的内存地址吗?
这个想法是将指针值用作内存地址,除非它具有这个“特殊”-1 值。即使指针为 NULL,也应将指针视为内存地址(在这种情况下,它指向的对象尚未构建)。
我知道这可能与平台有关,但有问题的程序预计可以在 Linux、Windows 和 MacOSX 中运行。
手头的问题比这里描述的要大得多,所以评论或回答这个方法没有用的问题。我知道这有点老套,但替代方案是一个主要的重构:/
提前致谢。