3

给定以下代码段:

- (void)doSomething
{
    NSUInteger count;
}

什么是计数?是否保证为0?

4

1 回答 1

16

不,它不能保证为零,因为它是一个局部自动变量。没有初始化,它的值是不确定的。如果您希望它为零,请对其进行初始化:

NSUInteger count = 0;

或将其定义为static

static NSUInteger count;

因为具有静态存储持续时间的变量被隐式初始化为零,但请注意这有副作用(即值在函数调用之间保持不变)。

于 2013-05-13T20:35:49.100 回答