tags:

views:

63

answers:

2

I have a four byte char array and I want to convert it to double. How can I achieve this in C.

A: 

Haven't you already asked it here?

rano
Yes I did but question here is a bit specific.
Ideveloper
@Ideveloper: have you tried the NSData route?
rano
+2  A: 

float and double are so closely related in C that an explicit conversion is probably not needed. However, it would be necessary for transmission to another system, or to match a data format specification. This will do what you ask:

union {
    char   c [4];
    float  f;
} x;
double d;

memcpy (x.c, character_source, sizeof x.c);
d = x.f;
wallyk