iphone - 异常的 NSLog() 导致崩溃

标签 iphone objective-c c

有谁知道以下原因导致程序崩溃的原因吗?

    NSFileManager *filemgr;
    NSString *currentpath = [filemgr currentDirectoryPath];  
    NSArray *filelist;

    filemgr = [NSFileManager defaultManager];

    filelist = [filemgr contentsOfDirectoryAtPath:currentpath error:nil];
    int count=[filelist count];

    for (int i = 0; i < count ; i++)
        NSLog (@"%@", [filelist objectAtIndex: 1]);

作为补充说明,我正在重定向 NSLog()。

最佳答案

我认为您的崩溃消息来自您要求当前目录的第二行。但是,您在第 4 行分配了变量,这可能是它崩溃的原因。相反,您应该将您的代码重新排列成这样。

NSFileManager *filemgr = [NSFileManager defaultManager];    
NSString *currentpath = [filemgr currentDirectoryPath];  

据我所见,您首先声明了所有变量,这就是发生错误的原因。在 Objective-C 中,在何处声明变量并不重要,但在使用它们之前必须对其进行分配和初始化。

关于iphone - 异常的 NSLog() 导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9028159/

相关文章:

iphone - 如何裁剪 Sprite 的某些部分?

objective-c - 如何在缩放的 CALayer 中保持子层的缩放

c - 如何创建一个新进程并使用共享内存与之通信

c++ - 在 C++ 中使用为 C 制作的 Linux API header

我可以在 linux 中获得与 mesa 的 opengl 兼容性上下文吗?

iphone - iOS:裁剪从带有叠加层的 UIImagePickerController 相机抓取的静止图像

iphone - 如何发送基于用户 ID 的苹果推送通知而不仅仅是设备 token ?

ios - 仅在必要时删除 double 的尾随零

objective-c - Cocoa:向现有 GUI 应用程序添加命令行功能

objective-c - 替换 NSString 中的字符