Вы, вероятно, знали это, но вы можете делать буквальные числа с плавающей запятой / длинные двойные числа
float f = 4.0f;
long double f = 4.0l;
Двойной является значением по умолчанию, потому что это то, что большинство людей используют. Длинные удвоения могут быть излишними, а плавающие имеют очень плохую точность. Double работает почти для каждого приложения.
Почему наименование? Однажды у нас были только 32-битные числа с плавающей запятой (ну, на самом деле все, что у нас было, это числа с фиксированной запятой, но я отвлекся). В любом случае, когда с плавающей точкой стало популярной особенностью в современных архитектурах, C, вероятно, был языком dujour, и было дано имя «float». Казалось бы, имеет смысл.
В то время о двоичном коде можно было подумать, но он не был реализован в процессоре / fp процессора того времени, который был 16 или 32 бита. Как только двойник стал использоваться в большем количестве архитектур, С, вероятно, нашел время добавить его. C нужно что-то имя для чего-то вдвое большего размера, поэтому мы получили двойное. Тогда кому-то понадобилась еще большая точность, мы думали, что он сошел с ума. Мы все равно добавили это. Название четверки (?) Было излишним. Длинный дубль был достаточно хорош, и никто не делал много шума.
Частично путаница заключается в том, что доброе ол "int", кажется, меняется со временем. Раньше, что «int» означало 16-битное целое число. Однако число с плавающей точкой привязано к IEEE std как 32-разрядное число с плавающей точкой IEEE. По этой причине C оставил число с плавающей точкой, определенное как 32-битное, и сделал double и long double, чтобы ссылаться на более длинные стандарты.