Какая разница между float и double?

Когда я запускаю следующий код,

NSString* s= @"10000000.01";
float f = [s floatValue];
double d = [s doubleValue];

if(f > 10000000)
{
    NSLog(@"Over Value");
}
else {
    NSLog(@"OK Float");
}

if(d > 10000000)
{
    NSLog(@"Over value");
}
else {
    NSLog(@"OK Double");
}

Ответ похож на следующий.

2013-04-19 17:07:29.284 float[2991:907] OK Float
2013-04-19 17:07:29.287 float[2991:907] Over value

Почему значение с плавающей запятой изменилось на 10000000.00 вместо 10000000.01?

Ответы на вопрос(1)

Ваш ответ на вопрос