NSString转换为long得不到预想结果

iOS 码拜 7年前 (2015-05-09) 526次浏览 0个评论
 

NSString *aa = @”123456789″;
long code = (long)aa;
NSLog([[NSString alloc] initWithFormat:@”%d”, code]);

为什么log里面不是  123456789

long code1= 123456789;
NSLog([[NSString alloc] initWithFormat:@”%d”, code1]);

而直接定以一个数字log里面就是  123456789了

设计时候只关注逻辑就可以了,因为现实很简单,只需要将计算结果转化成NSString就可以。将NSString转换为逻辑数字感觉是给自己找麻烦。
 char* cLong = [aa utf8String];
 long tempLong = (long)cLong;

uft8String这个消息可能不叫这个名儿,但应该有

40分
long code = [aa longLongValue];

NSString提供了多种方法转换字符串的数字 intValue, integerValue, floatValue,详细看帮助。

引用楼主 fanhoucheng 的回复:

NSString *aa = @”123456789″;
long code = (long)aa;
NSLog([[NSString alloc] initWithFormat:@”%d”, code]);

为什么log里面不是  123456789

long code1= 123456789;
NSLog([[NSString alloc] initWithF……


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明NSString转换为long得不到预想结果
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!