2012-11-16 33 views
2

我是新來的objective-c。我想在NSString中顯示較短的CGFloat值。我知道C很容易。但我不知道如何在Objective-c中做到這一點。 例如,如何在NSString中顯示時縮短CGFloat值?

CGFloat value = 0.333333; 
NSLog(@"%f%%",value*100); 

它將顯示33.3333%。但我想把它做成33.33%。我該怎麼做?

回答

6
CGFloat value = 0.333333; 
NSLog(@"%.2f%%",value*100); 

將在日誌中導致33.33%

Here是來自蘋果的文檔的相關章節。 Objective-C格式說明符非常接近(或甚至可能與您從C中知道的相同)。NSLog()自動接受格式說明符。要使用任何NSString執行此操作,請使用[NSString stringWithFormat:@"myString", arg1, arg2..]

+0

你是對的。謝謝。 – chancyWu

+2

@chancy這對於內部使用來說很好,但如果您需要格式化這樣的值以顯示給用戶,請不要這樣做。相反,使用NSNumberFormatter,以便根據用戶的區域設置正確格式化數字。 – rmaddy

0

或者,如果你願意,你可以使用printf()像C.

+0

其實我想在nsstring中顯示。現在我知道如何做到這一點。謝謝。 – chancyWu