我创建了一个数组,类似于经典 C(不是 NSArray 或其子项之一)- 类似于 BOOL i[5];
。我想让它的所有值都等于 NO。
首先,我没有找到有关此类数组初始值的任何信息(我知道在经典 C 中它们将是未定义的,但不确切了解 Objective-C。我找到了有关类及其类的信息内部数据 [在分配后,没有初始化],但与简单数据类型无关)。
第二,如果我应该手动设置数组值 - 我应该使用 memset(...);
还是其他的东西?
为了防止可能出现的问题...我想将此构造用作临时 bool 标志的数组,并且不认为它被证明可以在这里使用类似 NSArray 的东西。
最佳答案
如果 BOOL i[5]
是 ObjC 类的 ivar,它的内容将被初始化(memset
-ed)为 0。
如 +alloc
method 中所述:
... memory for all other instance variables is set to
0
.
要在其他情况下将数组设置为全否,您可以使用
memset(i, 0, sizeof(i));
关于c - 创建的 C 数组的 Objective-C 初始值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3021620/