2016-05-18 12 views
-5
*warning: iteration 5u invokes undefined behavior [-Waggressive-loop-optimizations]                                       
if([user1 isEqualToString:account1[i].name])                                                  
^                                                             
main.m:33:2: note: containing loop                                                      
for(i=0;i<=6;i++)                                                          

^
bitte jemand korrigieren diesen CodeObjective-C-Programmierung

+1

Sie die Deklaration von 'account' und zeigen, wie es besiedelt ist. – trojanfoe

+1

Wenn Sie Kommentare zu schließenden Klammern benötigen, die angeben, was sie schließen, müssen Sie Ihre Codierung ernsthaft überdenken. – luk2302

+2

"Korrigieren Sie den Code"? Was soll es tun? Erhalten Sie einen Fehler? Was ist das unerwünschte Szenario/Ergebnisse? – Larme

Antwort

-1

Fast sicher Sie haben:

Thing account1[6] = { ... }; 
for (i = 0; i <= 6; i++)  
{ 
    if ([user1 isEqualToString:account1[i].name]) 

und der Compiler weiß, dass <= 6 über die Grenzen des Arrays gehen (letzte Index ist 5 nicht 6).

Zur Korrektur:

for (i = 0; i < 6; i++) 
      ^