[gelöst]Value stored to 'anotherInteger' is never read

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [gelöst]Value stored to 'anotherInteger' is never read

    Hallo.

    Ich bekomme nach dem Analysieren meines Quellcodes die Meldung:
    "Value stored to 'anotherInteger' is never read".
    Der Code hierzu sieht folgendermaßen aus;

    Quellcode

    1. NSInteger anotherInteger = 0;
    2. while(anotherInteger < 8) {
    3. // do something
    4. anotherInteger++;
    5. }

    Ich denke, dass die Analyse hier auf 'anotherInteger = 0' anspielt und möchte, dass ich den Wert '0' irgendwo auslese. Doch tue ich das nicht schon in der while-Bedingung?


    Grüße,
    h0x45


    Edit:

    Quellcode

    1. NSInteger anotherInteger = 0;
    2. while(anotherInteger < 8) {
    3. if(Bedingung == YES) {
    4. anotherInteger = 9;
    5. break
    6. }
    7. anotherInteger++;
    8. }

    anotherInteger wurde nach der while-Schleife nicht mehr benötigt -> 'anotherInteger = 9' somit überflüssig -> Analyzer-Hinweis

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von h0x45 ()

  • Die Warnung ist wahrscheinlich eher ein Bug… Weil die Variable gelesen wird, zwar in einer Schleife… Aber die kannst Du ignorieren, oder auch ausschalten in Xcode… Irgendwo in den Build-Settings weiter unten kann man das einstellen.
  • gritsch schrieb:

    wahrscheinlich hat er bei "// do something" code drin der in jedem fall continue, break oder return aufruft und er somit nie zum anotherInteger++ kommt!

    Ja, das ist teilweise korrekt, die komplette Schleife sieht etwa folgendermaßen aus:

    Quellcode

    1. NSInteger anotherInteger = 0;
    2. while(anotherInteger < 8)
    3. {
    4. if ([socket dataReceived] == YES)
    5. {
    6. anotherInteger = 9;
    7. break;
    8. }
    9. [NSThread sleepForTimeInterval:0.5f];
    10. anotherInteger++;
    11. }
    Alles anzeigen
  • Danke.
    Ursprünglich hatte ich nach der Schleife mal eine Abfrage drin, welche den Wert auf '8' oder '9' abgefragt hat.
    Diese Abfrage habe ich aber entfernt.

    Danke nochmals für die Antworten - habe nicht gedacht dass mir solche Code-Unschönheiten angestrichen werden.


    Grüße,
    h0x45