Objective c 无法将指针强制转换为“double”类型

Objective c 无法将指针强制转换为“double”类型,objective-c,pointers,casting,double,Objective C,Pointers,Casting,Double,我希望同时在地图上显示多个注释。我的问题是,我有所有的纬度和经度作为NSString 我想将字符串转换为duble,以便可以传递给CLLocationCoordinate2D实例。。 但我得到的错误是:指针不能转换为“double”类型 locationCoordinate.latitude=(double)NearbyLocations.lat; locationCoordinate.latitude=(double)NearbyLocations.lng; 这是我遇到问题的代码的一部分。然

我希望同时在地图上显示多个注释。我的问题是,我有所有的纬度和经度作为NSString

我想将字符串转换为duble,以便可以传递给CLLocationCoordinate2D实例。。 但我得到的错误是:指针不能转换为“double”类型

locationCoordinate.latitude=(double)NearbyLocations.lat;
locationCoordinate.latitude=(double)NearbyLocations.lng;
这是我遇到问题的代码的一部分。然而,正如你可能看到的,我还没有完成它

NSMutableArray *locations= [[NSMutableArray alloc]init];
CLLocationCoordinate2D locationCoordinate;
location *NearbyLocations;
Annotation *annotatedLocations;

//for (int i=0; i < locationOnMap.count;i++) {


    annotatedLocations = [[Annotation alloc]init];

    locationCoordinate.latitude=(double)NearbyLocations.lat;
    locationCoordinate.latitude=(double)NearbyLocations.lng;
    annotatedLocations.coordinate=locationCoordinate;
    annotatedLocations.title=NearbyLocations.lo_name;
    annotatedLocations.subtitle=NearbyLocations.lo_vicinity;
    [locations addObject:annotatedLocations];
//}

如何将点类型字符串转换为double

您必须使用NSString转换方法doubleValue。看看这里:

您必须使用NSString转换方法doubleValue。看看这里:

这意味着您试图将NSNumber objective-c对象强制转换为c基元类型,这是不可能的。要向字典添加整数,必须将其转换为NSNumber对象。要将其拔出,必须按如下方式将其转换回:

locationCoordinate.latitude = [NearbyLocations.lat doubleValue];
locationCoordinate.latitude = [NearbyLocations.lng doubleValue];

这意味着您正试图将NSNumber objective-c对象强制转换为c基元类型,这是不可能的。要向字典添加整数,必须将其转换为NSNumber对象。要将其拔出,必须按如下方式将其转换回:

locationCoordinate.latitude = [NearbyLocations.lat doubleValue];
locationCoordinate.latitude = [NearbyLocations.lng doubleValue];

你在用哪种语言?马克,看起来很像Objective CSo对不起,我用的是Objective-c!!!完全忘了说那句话!你在用哪种语言?马克,看起来很像Objective CSo对不起,我用的是Objective-c!!!完全忘了说那句话!