hog*_*i89 0 c memory-management objective-c multidimensional-array ios-4.2
我正在开发一款iPhone游戏.一切都运行正常,但在Objective-C中重置一组int的正确方法是什么?该数组保存每个级别的墙的坐标.每次加载新级别时都会设置数组 - 但是如何"清除"数组呢?
LevelData.h
int wallH[50][2];
int wallV[50][2];
Run Code Online (Sandbox Code Playgroud)
LevelData.m
-(void)setLevelOne {
// (50, 70)
wallH[0][0] = 50;
wallH[0][1] = 70;
// (50, 90)
wallH[1][0] = 50;
wallH[1][1] = 90;
// And so on ...
// The same for wallV (Vertical walls in the level)
}
Run Code Online (Sandbox Code Playgroud)
如何"清除"阵列,以便为下一级做好准备?[wallH发布]不起作用 - 我们正在谈论交流阵列:/
您可以使用memset函数将数组归零(在您的情况下,您知道数组中的元素数量,以便您可以使用"硬编码"100确定大小):
memset(wallH, 0, 100*sizeof(wallH[0][0]);
Run Code Online (Sandbox Code Playgroud)