Wie wird ein Float-Wert gerundet und im iPhone SDK in den NSInteger-Wert konvertiert?

8

Ich muss einen float-Wert runden und in einen NSInteger -Wert konvertieren.

Zum Beispiel:

%Vor%

Ich möchte, dass das Ergebnis 91 ist. Wie kann ich das loswerden?

    
monish 19.05.2010, 11:55
quelle

4 Antworten

18

Eine der folgenden mathematischen C-Funktionen könnte für Sie funktionieren:

  • Doppelzelle (doppelt)
  • Doppelboden (Doppel)
  • double nearbyint (doppelt)
  • double rint (double)
  • Doppelrunde (Doppel)
  • lang int lrint (double)
  • lang int lround (double)
  • lang lang int llrint (double)
  • lang lang int llround (double)
  • double trunc (double)

Öffnen Sie eine Terminalsitzung, und geben Sie (beispielsweise)

ein, um weitere Dokumentation zu erhalten %Vor%

Ich nehme lround als Beispiel, weil ich denke, dass das das ist, was Sie wollen.

    
JeremyP 19.05.2010, 15:59
quelle
14

Eine schnelle Runde und eine Umwandlung wirken sich sowohl auf negative als auch auf positive Werte aus:

%Vor%     
Skurfur 02.01.2014 19:46
quelle
4

Mach

%Vor%

vor der Ganzzahlkonvertierung.

    
Tom Womack 19.05.2010 12:01
quelle
1

Versuchen Sie:

%Vor%     
pheelicks 19.05.2010 12:11
quelle

Tags und Links