Verwenden des Mod-Operators in der iOS-App

8

Ich habe ein NSTimeInterval, das als Double gespeichert wird. Ich möchte die Anzahl der Minuten, die in der zweiten Wert sind mit dem% Operator erhalten.

%Vor%

wobei Minuten als double minutes

deklariert sind

Das Ergebnis ist, dass XCode sagt "Ungültige Operanden in Binär%"

Gedanken?

    
Jerry 16.09.2010, 22:00
quelle

3 Antworten

12

Das OP hat seine Frage geändert, also hier ist meine neue Antwort:

Sie möchten minutes = floor(secondsValue) / 60; ausführen. Sie wollen int Division, nicht Modul.

    
AlcubierreDrive 16.09.2010, 22:04
quelle
13

Aus dem C-Standard Abschnitt 6.5.5 Multiplikative Operatoren , Absatz 2:

  

Die Operanden des Operators % müssen einen Integer-Typ haben.

    
Carl Norum 16.09.2010 22:05
quelle
4

Wenn secondValue ein Float oder Double ist, können Sie C-Typ-Casting verwenden:

%Vor%

BEARBEITEN:

(Wenn secondValue zu groß ist, um in einen int zu passen, funktioniert das nicht. Sie müssen also wissen, dass der Bereich Ihres Werts angemessen ist.)

    
hotpaw2 16.09.2010 22:07
quelle

Tags und Links