iOS初始化任何变量都会导致应用崩溃

时间:2012-11-28 09:33:52

标签: objective-c ios

当我尝试初始化任何变量时,我的应用程序崩溃

NSString *str = @"Some String";

它崩溃并显示错误消息 - “EXC_BAD_ACCESS”
这个stmt在函数内部。程序中的其他任何地方初始化都在工作,但是当我调用此函数时,我的应用程序崩溃,给出错误消息
这是我的功能

+ (NSString *) recvToFile:(NSString *)_fileName {

@try {
    int _sz = [self recvNumber:4];
    uint8_t t[_sz];
    NSMutableData *data = nil;//[[NSMutableData alloc] init];
    NSMutableData *fileData = [[NSMutableData alloc] init];
    NSString *str = @"Some String";
        long _pos = 0;
        NSString *_fullPath = _fileName;
        while (_sz > _pos) {
            long _c = [m_sin read:t maxLength:_sz];
            _pos += _c;
            data = [NSData dataWithBytes:t length:_c];
            if([Misc checkTempFileExists:_fileName]==nil)
                [[NSFileManager defaultManager] createFileAtPath:_fullPath contents:nil attributes:nil];
            [fileData appendData:data];
        }
    [fileData writeToFile:_fullPath atomically:YES];
    NSDictionary *attr = [[NSFileManager defaultManager] attributesOfItemAtPath:_fullPath error:nil];

    long long length = [[attr valueForKey:@"NSFileSize"] intValue];
    if (length >= _sz)
        return (_fullPath);
}
@catch (NSException * e) {
}
return (nil);
}

其他任何地方的初始化都在起作用,但不适用于此功能

1 个答案:

答案 0 :(得分:0)

在你的代码中你正在使用类方法,并且在那个方法中你正在初始化非静态字符串,我认为应该解决这个问题。而不是那个你可以用静态NSString = @“Some String”检查它吗?在.m文件中导入文件之后。同样的方法也可以创建完整路径字符串。然后你可以为我的英文分配如fullpath = _fileName; @ aswinikumar..sorry