2010-07-07 91 views
6

在iphone應用程序中,我在NSStrings中存儲了2個大數字,並且我想知道通過除法得到的浮點數。將長整數除以百分比

現在,我有:

unsigned long long number = [string1 longLongValue];
unsigned long long number2 = [string2 longLongValue];
float percent = number/number2;
[textField setText:[NSString stringWithFormat: @"%f%%",percent]];

(我假設我必須使用「無符號長很長」,而不是整數,因爲在NSString的數字是相當高的第一個是309681754和第二個是6,854,433,820)

但是,我這樣做後,我總是在文本字段中得到0%。我究竟做錯了什麼?

感謝您提前提供任何幫助。

回答

20

您正在分割整數。這總是導致一個整數。

你需要做的是在分割之前將它們投射到花車上。這應該工作:

float percent = (float)number/(float)number2; 
+0

謝謝,這個伎倆。如果我想要百分比格式的結果,我將如何移動小數點? – element119 2010-07-07 18:56:27

+0

例如,我得到.04518,我希望它是4.518% – element119 2010-07-07 18:57:12

+16

@golfromeo:真的嗎?你在問如何*移動小數點*?嘆。乘以100. – 2010-07-07 19:06:22