我最近升级到Xcode7,使用%p format-specifier时输出更改了。当我运行代码时(如下):

IOLog("%s[%p]::%s()\n", getName(), this, \_\_FUNCTION\_\_);

我得到:

com_MyCompany_MyDriver []::init()

使用Xcode6我得到:

com_MyCompany_MyDriver [0xffffff8015c49a00]::init()

在Xcode6下,我得到一个真实的地址。在Xcode7下,我得到“ptr”。从6变为7?为什么%p给出这样的抽象字符串而不是真实地址?

最佳答案

系统完整性保护通过用''替换内核地址来保护内核地址。

07-28 13:12