Iphone 将Objective-C中的字符串更改为整数
可能重复:Iphone 将Objective-C中的字符串更改为整数,iphone,objective-c,Iphone,Objective C,可能重复: 我想从UITextField对象中获取一个字符串,并将其转换为整数标量类型 NSInteger *ageOfTheUser; NSString *string; self.string=age.text; ageOfTheUser=(int)string; 我在用户年龄时收到一条警告:“assigment从字符串转换生成指针” ageOfTheUser = [string intValue]; 注意:您可以将int分配给NSInteger,无需任何附加语法。简单如下: int
我想从UITextField对象中获取一个字符串,并将其转换为整数标量类型
NSInteger *ageOfTheUser;
NSString *string;
self.string=age.text;
ageOfTheUser=(int)string;
我在用户年龄时收到一条警告:“assigment从字符串转换生成指针”
ageOfTheUser = [string intValue];
注意:您可以将int
分配给NSInteger
,无需任何附加语法。简单如下:
int myAgeInt = [@"30" intValue];
如果您的
字符串
已设置为数字,您只需执行以下操作:
ageOfTheUser = [string integerValue];
你们都准备好了
intValue
(意指转到int
类型)和integerValue
(意指您声明的NSInteger
类型)之间存在差异
还有一件事,去掉
NSInteger
声明后的指针(即,不要使用NSInteger*ageofuser;
,而是使用NSInteger ageofuser;
) 首先,NSInteger的类型定义为long int,因此它不是一个对象。只需使用:
NSInteger ageOfTheUser;
将NSString转换为int非常简单:
ageOfTheUser = [self.string intValue];
您不需要中间的StrugFuffFrase.我想您需要<代码> NothAgEngAGE用户;<代码>;否
*
。这是不正确的,因为NSString的intValue方法返回的是int
,而不是NSInteger
,真的吗?您是否尝试过此方法,但发现它不起作用?:)哦,当然,它确实有效(对于32位数字/体系结构)。64位有些不同。和。