0

私は完全なプロジェクトを含めているので、あいまいなものは何もありません。

ああ

#import <Foundation/Foundation.h>

@interface A : NSObject
-(void) zero;
@end

午前

#import "A.h"

@implementation A

#define width 3
#define height 3

uint8_t** _board;

-(void) zero
{
for(int i = 0; i < width; i++)
    for(int j = 0; j < height; j++)
        _board[i][j] = 0;
}

-(void)dealloc
{
for(int i = 0; i < width; i++)
    free(_board[i]);
free(_board);
}

-(id) init
{
self = [super init];
if(self)
{
    _board = malloc(sizeof(uint8_t*)*width);
    for(int i = 0; i < width; i++)
        _board[i] = malloc(sizeof(uint8_t)*height);
}
return self;
}

@end

ViewController.h

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
@end

ViewController.m

#import "ViewController.h"
#import "A.h"

@implementation ViewController

A* _gameBoard;

- (void)viewDidLoad
{
[super viewDidLoad];

_gameBoard = [[A alloc] init];
[[A alloc] init];

[_gameBoard zero];
}

@end

具体的には、_board を設定すると、関数 0 でプログラムがクラッシュします。また、削除する場合は、

[[A alloc] init];

ViewController の実装から、プログラムはクラッシュしません。事前に助けてくれてありがとう。

4

2 に答える 2