2012-08-08 142 views
1

如何將NSString轉換爲char?注 - char不是const char。我有浮點數,我需要將其轉換爲只剩下.之後的2個值。所以我使用NSString來做到這一點。之後,我需要從中做出NSNumber。所以我決定將NSString轉換爲char,然後再轉換爲NSNumber。所以,我想NSString爲char(不是const char)

char* someCharINeed = [SomeString UTF8String]; 

它說

Cannot initialize a variable of type 'char *' with an rvalue of type 'const char *' 

如果使用這樣的

const char* someCharINeed = [SomeString UTF8String]; 

它的工作原理,但NSNumber的

[NSNumber numberWithChar:someCharINeed]; 

Cannot initialize a parameter of type 'char' with an lvalue of type 'const char *' 

回答

1

而不是轉換爲一個字符串,另一種方法是將數字乘以100,將答案轉換爲一個int然後除以100 - 這將給你2個小數點後的位置。

float newValue = floorf(oldValue*100)/100; 
+0

但不int刪除'.'後面的任何東西?我的意思是不會像這樣發生: int smth = 124.146334; smth = 124 當我需要價值 smth = 124.14? – hockeyman 2012-08-08 06:55:53

+1

這就是爲什麼你先乘以100。 20.1234 X 100 = 2012.34 - >轉換爲int = 2012.除以100 = 20.12 – rdelmar 2012-08-08 06:58:03

+0

哦對。非常感謝你 :) – hockeyman 2012-08-08 07:02:45