Geo*_*sen 1 evaluation pointers boolean objective-c
通过一些关于修改CGImageRef数据的文档,我遇到了一个奇怪的例子 - 它有点像这个伪代码:
void *data = Allocate space for data;
if (data != NULL) Manipulate data;
if (data) Free data;
Run Code Online (Sandbox Code Playgroud)
这让我感到疑惑!布尔运算if (data != NULL)和布尔运算有什么区别if (data).
更具体地说,当指针被视为布尔值时,指针如何在Objective C中表现?试图谷歌这一点,我才发现的有关问题pointers-无数到 -booleans,而不是指针被评估为布尔值.
他们完全一样.任何类型的非零值在C中被解释为"真",并且在Objective-C中被解释为"true".C甚至没有布尔类型.
| 归档时间: |
|
| 查看次数: |
121 次 |
| 最近记录: |