C printf с использованием% d и% f
Я работал над этой программой и заметил, что использование% f для двойного числа и% d для числа с плавающей запятой дает мне нечто совершенно иное. Кто-нибудь знает, почему это происходит?
int main ()
{
float a = 1F;
double b = 1;
printf("float =%d\ndouble= %f", a, b);
}
Это выход
float = -1610612736
double = 190359837192766135921612671364749893774625551025007120912096639276776057269784974988808792093423962875123204096.0000