标签: exc-bad-access

NSDictionary 和 EXC_BAD_ACCESS

试图在这里找到答案,最终在另一个网站上找到了线索。在这里发布以防有人在这里搜索并遇到同样的问题。

NSDictionary *d = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"foo", YES, 42, nil] 
forKeys:[NSArray arrayWithObjects:@"bar", @"baz", @"count", nil]];
Run Code Online (Sandbox Code Playgroud)

这产生:

Program received signal: "EXC_BAD_ACCESS"
Run Code Online (Sandbox Code Playgroud)

这是什么原因?

exc-bad-access objective-c nsdictionary ios

4
推荐指数
1
解决办法
1648
查看次数

strcpy 导致 EXC_BAD_ACCESS?

我正在使用 Xcode 4 制作一个命令行工具。

我在 strcpy 线上收到 EXC_BAD_ACCESS 错误:

char *invalidOption = NULL;
strcpy(invalidOption, argv[2]);
Run Code Online (Sandbox Code Playgroud)

argv[1] 是 -v (“有效”选项),argv[2] 是 -z (“无效”选项)。

然后,出于显示原因,我需要更改“invalidOption”(打印“错误”消息)。

关于为什么会发生这种情况有什么想法吗?如果您需要更多详细信息,请告诉我。

program-entry-point exc-bad-access objective-c strcpy xcode4

4
推荐指数
1
解决办法
2861
查看次数

EXC_BAD_ACCESS在初始化时在自定义类上设置属性?

我有一个简单的Answer类,如下所示:

@interface Answer : NSObject {
  NSString *_text;
  NSNumber *_votes;
}

@property(nonatomic, retain) NSString *text;
@property(nonatomic, retain) NSNumber *votes;

+(id)initFromAnswerData:(NSSet *)data;
-(id)initWithText:(NSString *)answer;

@end
Run Code Online (Sandbox Code Playgroud)

实现如下:

#import "Answer.h"
#import "AnswerData.h"
#import "AppDelegate.h"

@implementation Answer

@synthesize text = _text;
@synthesize votes = _votes;


-(id)initWithText:(NSString *)answer {
  if( (self=[super init])) {
    _text = answer;
    _votes = 0;
  }
  return self;
}


@end
Run Code Online (Sandbox Code Playgroud)

如果我使用该initWithText:方法在视图控制器中创建一个Answers数组,当我在数组中取一个Answer并尝试找到它的文本值时,我不可避免地会出现EXC_BAD_ACCESS错误.

但是,如果我初始化一个新的答案,设置文本值,然后将其添加到数组我没有此访问问题.

所以这会导致问题:

[arrayOfAnswers addObject:[[Answer alloc] initWithText:@"Hello"]];
Run Code Online (Sandbox Code Playgroud)

但这不是:

Answer *newAnswer = [[Answer alloc] initWithText:nil];
newAnswer.text = @"Hello";
[arrayOfAnswers addObject:newAnswer]; …
Run Code Online (Sandbox Code Playgroud)

xcode exc-bad-access objective-c

4
推荐指数
1
解决办法
1917
查看次数

在更改CFDataRef的字节时,iOS 6上的EXC_BAD_ACCESS,但不是5

我有一个应用程序,可以将各种过滤器应用于图像.它在iOS 5上运行良好但在6上崩溃.下面是它崩溃的地方示例:

CGImageRef inImage = self.CGImage;
CFDataRef m_DataRef = CGDataProviderCopyData(CGImageGetDataProvider(inImage)); 
UInt8 * m_PixelBuf = (UInt8 *) CFDataGetBytePtr(m_DataRef); 

int length = CFDataGetLength(m_DataRef);

for (int i=0; i<length; i+=4)
{
    if(filter == filterCurve){

    int r = i;
    int g = i+1;
    int b = i+2;

    int red = m_PixelBuf[r];
    int green = m_PixelBuf[g];
    int blue = m_PixelBuf[b];

    m_PixelBuf[r] = SAFECOLOR(red); //    <==== EXC_BAD_ACCESS (code = 2)
    m_PixelBuf[g] = SAFECOLOR(green);
    m_PixelBuf[b] = SAFECOLOR(blue);
   }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试将值重新分配给时,请注意错误的访问点m_PixelBuf.任何人都知道为什么会这样?iOS 6中的内容会导致什么?

exc-bad-access core-foundation cfdata ios ios6

4
推荐指数
1
解决办法
2371
查看次数

lldb 调试 java 进程。跳过 EXC_BAD_ACCESS

我试图让调试器不停止信号:
proc hand -p true -s false SIGBUS
proc hand -p true -s false SIGSEGV

我什至试图设置-s false所有信号。
但它仍然停止执行EXC_BAD_ACCESS
它经常发生,有时可能是无限循环。它使调试变得不可能。

在此处输入图片说明

有没有办法让 lldb 不停止?

macos java-native-interface exc-bad-access lldb

4
推荐指数
1
解决办法
298
查看次数

Swift UI - 线程 1:EXC_BAD_ACCESS(代码=2

我将系统驱动器图标 (NSImage) 添加到我的驱动器列表中

现在应用程序在 AppDelegate.swift 的第 13 行崩溃 class AppDelegate: NSObject, NSApplicationDelegate {Thread 1: EXC_BAD_ACCESS (code=2, address=0x7ffeef3fff48)

我知道这是我添加的图像,因为当我用文本替换它时就可以了

这是我添加图像的类。

import SwiftUI

let workspace = NSWorkspace.init()

struct DriveList: View {
   let drives = SDCardTools.getDrives()!
   var body: some View {
       return List(drives) { drive in
           DriveRow(drive : drive)
       }
   }
}

struct DriveRow: View {
   var drive : Drive
   
   var body: some View {
       HStack {
           DriveIcon(path : drive.path)
               padding(10)
           Text(drive.name)
       }
   }
}

struct DriveIcon : View {
   
   var …
Run Code Online (Sandbox Code Playgroud)

image exc-bad-access list swift

4
推荐指数
1
解决办法
2480
查看次数

"EXC_BAD_ACCESS"," - [CFString retain]:在表格中滚动时发送到解除分配实例的消息"

应用说明:我是一名新的iPhone开发人员.我正在使用一个应用程序,它使用两个表视图,然后是详细视图.第一级表视图显示几个类别,当选择类别时,将显示与该类别相关的主题列表.选择主题后,将显示与该主题相关的详细视图.

当我在模拟器中运行应用程序时,一切似乎都运行良好(但只是简单!):

  • 第一级表视图:此视图与类别加载正常并且没有任何问题.
  • 主题列表视图:此视图似乎也可以正常工作,但只是简单.它加载了所有正确的主题,我甚至可以在整个主题列表中快速向上和向下滚动 - 但这只能在滚动时运行几秒钟(之后应用程序崩溃).我还可以选择任何主题并成功加载详细视图.
  • 细节视图:工作正常,没有问题.

我正在为应用程序使用两个nib:MainWindow.xib显示First Level和Topic View表.TopicDetail.xib用于显示主题的详细信息.

数据:第一级视图从包含字符串数组的plist获取其数据.主题列表视图从词典列表中获取其数据.每个字典由五个字符串组成.其中一个字符串包含与主题相关的类别的"标签".选择"第一级视图"中的类别时,"主题视图"将选择与所选类别匹配的"标签"主题,并将其显示在"主题视图表"上.

问题:我的问题在于第二个"主题视图".我可以通过几种方式导致崩溃:

  • 如果我快速向上和向下滚动主题列表,几秒钟内一切正常,那么应用程序崩溃.

  • 如果我从屏幕上滚动一个单元格,我可以将同一单元格滚动回屏幕而不会出现问题.如果我重复此操作(第二次从屏幕上滚动相同的单元格然后尝试将其滚动回屏幕),当将单元格滚动回屏幕时应用程序崩溃.

错误消息:返回的初始错误消息是EXC_BAD_ACCESS.当我启用NSZombieEnabled时,我收到错误消息" - [CFString retain]:消息发送到解除分配的实例 "

基于这些错误消息和我的研究,我相信我有一个内存分配问题,在已经发布的对象上调用"retain",但我无法弄清楚这个发生的位置以及如何解决它!任何帮助将不胜感激 - 谢谢你提前!!

码:

第一级视图Controller.h:

#import 
@class TopicListController;

@interface FirstLevelViewController : UITableViewController {
    NSArray *controllers;
    TopicListController *childController;
}
@property (nonatomic, retain) NSArray *controllers;
@end
Run Code Online (Sandbox Code Playgroud)

第一级视图Controller.m:


#import "FirstLevelViewController.h"
#import "TopicListController.h"
#import "TopicAppDelegate.h"

@implementation FirstLevelViewController
@synthesize controllers;

- (void)viewDidLoad
{
    self.title = @"Categories"; 
    NSString *path = [[NSBundle mainBundle] pathForResource:@"TopicCategoryList" ofType:@"plist"];  
    NSMutableArray *array = [[NSMutableArray …
Run Code Online (Sandbox Code Playgroud)

iphone xcode exc-bad-access uitableview

3
推荐指数
1
解决办法
5669
查看次数

SSL_CTX_use_certificate_file失败,并显示EXC_BAD_ACCESS

我最近想通过使用BSD套接字来构建自己的客户端-服务器系统。某些时候,我想加入SSL来加密数据传输。我按照教程进行操作,并使用Xcode(添加了链接器标志:-lssl -lcrypto)很好地编译了代码,但是EXC_BAD_ACCESS一旦程序到达SSL_CTX_use_certificate_file()调用位置,我就一直得到所有的时间。您可以在下面看到使用的代码。

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#include <openssl/bio.h>
#include <openssl/ssl.h>
#include <openssl/err.h>

int main(int argc, const char * argv[])
{
    SSL_METHOD *method = NULL;
    SSL_CTX *ctx = NULL;
    OpenSSL_add_all_algorithms();
    SSL_load_error_strings();
    method = SSLv2_server_method();
    ctx = SSL_CTX_new(method);

    SSL_CTX_use_certificate_file(ctx, "/Users/steve/certificate.pem", SSL_FILETYPE_PEM);
    SSL_CTX_use_PrivateKey_file(ctx, "/Users/steve/key.pem", SSL_FILETYPE_PEM);

    printf("Hello, World!\n");
    return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

如果程序无法在指定的路径中找到证书,则它不会崩溃,但是我当然不会进行任何SSL加密。证书本身可能有问题吗?我只是使用以下命令通过openssl生成了一个:

# generate the key
$ openssl genrsa -out key.pem 1024

# generate request
$ openssl req -new -key key.pem -out request.pem
# fill in …
Run Code Online (Sandbox Code Playgroud)

c ssl xcode openssl exc-bad-access

3
推荐指数
1
解决办法
3241
查看次数

单击按钮时EXC_BAD_ACCESS EXC_I386_GPFLT

我有一个UIViewControllerUITableView当的tableView是空的,我想展现另一种看法,所以我用这个

    [self.tableView setHidden:YES];
    NoKidsViewController *noKids = [self.storyboard instantiateViewControllerWithIdentifier:@"NoKidsView"];

    [self.view addSubview:noKids.view];
Run Code Online (Sandbox Code Playgroud)

一切都很好,我能看到这个观点.但当我点击其中一个按钮时,我收到EXC_BAD_ACCESS EXC_I386_GPFLT错误.

//NoKidsViewController

    - (IBAction)addNewKid:(id)sender {
        AddKid *addKidController = [self.storyboard instantiateViewControllerWithIdentifier:@"AddKid"];
           [self.navigationController pushViewController:addKidController animated:YES];

    }

    - (IBAction)saleSpot:(id)sender {
        SaleSpot *saleSpotController = [self.storyboard instantiateViewControllerWithIdentifier:@"AddKid"];
        [self.navigationController pushViewController:saleSpotController animated:YES];
    }
Run Code Online (Sandbox Code Playgroud)

我在网上搜索了3个多小时,试图找到没有成功的解决方案.什么可能导致错误?我该如何解决?

exc-bad-access objective-c uiviewcontroller

3
推荐指数
1
解决办法
8568
查看次数

线程1:EXC_BAD_ACCESS(代码= 1,地址= 0x40)

我正在使用webRTC运行代码。我没有发布代码,因为我真的不知道它崩溃的地方。它几乎是数千行代码。我想知道代码在哪里崩溃。是否有任何工具或任何方法来准确获取崩溃的代码行

exc-bad-access swift4.1 xcode9.4

3
推荐指数
1
解决办法
3699
查看次数