通过一些关于修改 CGImageRef 数据的文档,我遇到了一个奇怪的例子——它与这个伪代码类似:
void *data = Allocate space for data;
if (data != NULL) Manipulate data;
if (data) Free data;
这让我很纳闷!if (data != NULL)
布尔运算和布尔运算有什么区别if (data)
。
更具体地说,当指针被视为布尔值时,指针在 Objective C 中的行为如何?试图用谷歌搜索这个,我只发现无数与指向布尔值的指针有关的问题,而不是被评估为布尔值的指针。