En utilisant l'opérateur mod dans l'application iOS
-
03-10-2019 - |
Question
J'ai un NSTimeInterval qui est stocké en double. Je voudrais obtenir le nombre de minutes qui sont inide de la deuxième valeur en utilisant l'opérateur%.
minutes = secondValue % 60;
où minutes est déclaré comme double minutes
Le résultat est que XCode dit « Opérande invalide à% binaire »
Pensées?
La solution
L'OP a changé leur question, alors voici ma nouvelle réponse:
Vous voulez faire minutes = floor(secondsValue) / 60;
Vous voulez division int, pas le module.
Autres conseils
De la norme C, section 6.5.5 opérateurs multiplicatifs , paragraphe 2:
Les opérandes de l'opérateur
%
a le type integer.
Si SecondValue est un flotteur ou double, vous pouvez utiliser la coulée de type C:
minutes = ((int)secondValue) % 60;
EDIT:
(Si SecondValue est trop grand pour tenir dans un entier, cela ne fonctionnera pas. Vous devez savoir que la portée de votre valeur est appropriée.)