EXC_BAD_ACCESS bei objectAtIndex

  • EXC_BAD_ACCESS bei objectAtIndex

    Hallo zusammen,

    ich beschäftige mich nach langer Pause mal wieder mit dem Einstieg in die MAC und IOS Entwicklung.
    Ich stehe noch recht stark an den Anfängen des ganzen. Der Syntax ist ja hier und da schon unterschiedlich, allein schon die Deklaration von Variablen.

    Jetzt habe ich folgendes Problem.

    Deklariert habe ich ein Array

    NSArray* arrayData;

    Wenn ich jetzt versuche, auf das Element mit dem Index 2 zurückzugreifen, erhalte ich den Fehler "EXC_BAD_ACCESS"
    Folgender Code spielt dabei eine Rolle.

    NSString *item = [arrayData objectAtIndex:2];

    Inhaltlich gefüllt wird das Array wie folgt.

    arryData = [[NSArray alloc] initWithObjects:@"iPhone",@"iPod",@"MacBook",@"MacBook Pro",nil];

    Vielen Dank für die Hilfe ;)

    LG
    Andy

  • Hallo Stef,

    es ist XCODE 4.1.
    Ja, arryData ist ein Tippfehler.
    War wohl schon ziemlich spät =)

    Jetzt bekomme ich allerdings bei

    Quellcode

    1. arrayData = [[arrayData alloc] init];
    2. NSString *item = [arrayData objectAtIndex:2];


    folgenden Fehler

    Thread 1: Programm received signal: "SIGABRT"
    NSArray may not respond to "-alloc"

    Was will er mir mit SIGABRT sagen? Was ist da falsch?

    Vielen Dank

    LG
    Andy
  • Hallo Jungs,

    vielen Dank. Nun sind wir eine Zeile weiter
    Gleiches Problem mit SIGABRT mit folgendem Abschnitt

    NSString *item = [arrayData objectAtIndex:1];

    Könnt Ihr mir anständige Quellen zum Lernen empfehlen?
    Ich habe einige Tutorials ausprobiert, mir auch vereinzelt Bücher angeschaut. Letztlich ist es aber so, das teilweise was anderes drin steht und ich vokalem, auch wenn ich den Code nur kopiere, solche Fehler bekomme.
    Ich stehe zwar noch recht weit am Anfang, aber ich will und würde es gerne lernen, aber solche Sachen halten einfach auf, zumal mir dessen Bedeutung schlicht nicht geläufig ist :(

    Vielen Dank

    LG
    Andy
  • Quellcode

    1. @interface
    2. {
    3. NSArray *meinArray;
    4. NSString *meinString;
    5. }
    6. @property (nonatomic, retain) NSArray *meinArray;
    7. @property (nonatomic, retain) NSString *meinString;
    8. @end
    9. .
    10. .
    11. @implementation
    12. @synthesize meinArray, meinString;
    13. self.meinArray = [NSArray arrayWithObjects:@"A", @"B", @"C", nil];
    14. self.meinString = [self.meinArray objectAtIndex:1];
    15. NSLog(@"Wert=%@", self.meinString);
    Alles anzeigen