[英]Wrong value in NSUInteger. Why?
这是设置MyManager numberOfBedrooms属性的方式:
@property(nonatomic, assign) NSUInteger numberOfBedrooms;
这就是我从文本框中为它分配值的方式:
myManager.numberOfBedrooms = (NSUInteger) self.bedroomTextField.text;
When i enter a 1 in text box, and do the following, I get large values like 304284 WHy?
NSLog(@"bedrooms is: %@", [NSNumber numberWithUnsignedInt: myManager.numberOfBedrooms] );
NSLog(@"bedrooms is: %d", myManager.numberOfBedrooms );
改成:
myManager.numberOfBedrooms = (NSUInteger) [self.bedroomTextField.text intValue];
您无法进行这种转换(将对象转换为int):
myManager.numberOfBedrooms = (NSUInteger) self.bedroomTextField.text;
您应该执行以下操作:
myManager.numberOfBedrooms = [self.bedroomTextField.text intValue];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.