2016-08-04 78 views
-2

我需要從分區中提取特定的整數部分。我想出了一個簡單的函數,它返回我需要的東西。例如,如果我得到40,我需要整數,在劃分到12後留下。所以,如果我有40我需要3(3 * 36 + 4 = 40)。如何從分區中獲取整數

我試圖NSLog(@"-40 modulo %i", (div(42, 12)));,它輸出了我3

然而,試圖一個NSInteger VAR分配給該輸出錯誤:

_yearsModif = div(self.counterForYearsModif, 12); 

它輸出紅色警告 - Assigning to 'NSInteger' (aka 'long') from incompatible type 'div_t'

如何將結果賦值給簡單的整數變量?謝謝。

+1

爲什麼這麼複雜?如果你的數學是整數,你可以使用模運算符'%'?或者只是將它計算出來:'int x = 40; int div = x/12; int result = x - (div * 12);'。或者我錯過了什麼? – Legoless

回答

1

分割。整數部門已經做你想做的事情:

NSInteger counterForYearsModif = 40; 
NSInteger _yearsModif = counterForYearsModif/12; 
NSLog(@"%ld", _yearsModif); // 3 
+0

四捨五入麼?如果我得到2.9並且它評估爲3呢?那可能嗎? –

+0

是的,當然。但這不是你問的。 – matt