ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
1 июня
1514889 Топик полностью
IBAH (28.04.2025 10:46, просмотров: 91) ответил pav256 на Перешел с IAR ARM 8.3 на 9.5 перекомпилировал проект. Все float константы определились к double (и не только) соответственно вылезли предупреждения, например, при сравнении float TmpF c 1.23 . Не нашел где это можно поменять в настройках, чтобы по умолчанию использовалось float?
По умолчанию как раз double. Чтобы было флоат надо писать константу с суффиксом F, 1.23F 

Вещественные константы

Константа с плавающей точкой (вещественная константа) всегда представляется числом с плавающей точкой двойной точности, т. е. как имеющая тип double, и состоит из следующих частей:

целой части — последовательности цифр;

точки — разделителя целой и дробной части;

дробной части — последовательности цифр;

символа экспоненты е или E;

экспоненты в виде целой константы (может быть со знаком).

Любая часть (но не обе сразу) из нижеследующих пар может быть опущена:

целая или дробная часть;

точка или символ е (Е) и экспонента в виде целой константы.

Примеры вещественных констант

345.

3.14159

2.1Е5

.123ЕЗ

4037е-5

По умолчанию компилятор присваивает вещественному числу тип double. Если программиста не устраивает тип, который компилятор приписывает константе, то тип можно явно указать в записи константы с помощью следующих суффиксов:

F (или f) — float для простых вещественных констант,

L (или l) — long double для вещественных констант двойной расширенной точности.

Примеры:

3.14159F — константа типа float, занимающая 4 байта;

3.14L — константа типа long double, занимающая 10 байт.





https://prog-cpp.ru/c-constants/