Immer die Größe eines Arrays

ich habe einige code, der erfordert die Verwendung einer for-Schleife zum Lesen von Variablen aus einem array.

int size=sizeof names;
NSLog(@"thelast one is %d",size);
NSString *usersName=userName.text;
NSString *usersPass=passWord.text;
for (i=0; i<=size;i++){

    NSString *namesArray=[names objectAtIndex:i];
    NSString *passArray=[pass objectAtIndex:i];
    NSLog(@"namesArray %@",namesArray); 
    NSLog(@"passArray %@",passArray); 
    if([namesArray isEqualToString:usersName]){
        userValid=1;
    NSLog(@"The content of arry4 is %@",namesArray);


    }
    if([passArray isEqualToString:usersPass]){
        passValid=1;
        NSLog(@"The content of arry4 is %@",passArray);
    }

    else {
        userValid=0;
        passValid=0;
    }

}

Habe ich einige Probleme, weil jedes mal, wenn diese Funktion aufgerufen wird, innerhalb des Programms aus, es ist fast so, als wenn das 'sizeof Namen' ist falsch, daher nicht alle Werte im array aktiviert sind.
Ich bin generell ein Java-Programmierer, ich bin also verwendet, um Namen.Länge, und mir wurde gesagt, sizeof Namen ist im wesentlichen die gleiche Sache... keine Hilfe?

Cheers.

Wäre es nicht besser, NSDictionary, anstatt zwei arrays, die halten Sie den Benutzernamen und das zugehörige Passwort?
Sie müssen nicht ein break. Das bedeutet, dass, wenn Sie irgendwelche anderen Namen, nachdem ein Gültiger name ist, dann wird die Schleife weiterhin ausgeführt, und Klamotten die Werte von userValid und userPass. Und deine Namensgebung ist nicht intuitiv - Sie haben namesArray enthält eine Zeichenfolge, etc - das macht den code schwerer zu Lesen.
... und, natürlich, Sie nicht speichern die Passwörter als plain text. richtig? RECHTS?!?

InformationsquelleAutor gunmania0 | 2011-06-16

Schreibe einen Kommentar