objective-c - Objective C - 从 NSString 到 Int 的类型转换

标签 objective-c casting

我有一段 Objective C 代码,我将 NSString 转换为 int:

NSString *a=@"123abc";
NSInteger b=(int) a;
NSLog(@"b: %d",b);

NSLog 产生这个输出:

b: 18396

谁能给我解释一下为什么会这样?

我的印象是将字符串转换为整数会从字符串中获取数值。

最佳答案

那里有指向 NSString 对象的指针的整数值。要将字符串解析为整数,您应该这样做:

NSString *a = @"123abc";
NSInteger b = [a integerValue];

关于objective-c - Objective C - 从 NSString 到 Int 的类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13046047/

相关文章:

objective-c - 用于在 iOS 应用程序中 checkin 用户的 Facebook Api

iphone - OAuthConsumer 和 Twitpic

ios - 如何在 iOS 中组合 block 和返回值的方法?

objective-c - 如何注销 Mac 应用程序帮助手册

java - 将原始 int 转换为 Number

c++ - 在 C++ 中转换没有按预期工作

java ;将基类转换为派生类

ios - Objective-C构建中的重复符号错误?

ios - 检查类型并转换为具体类型以进行功能签名

javascript - 在javascript中将字符串转换为函数