Правила стандартных арифметических преобразований
| Исходный тип | Преобразованный тип | - Правила преобразований |
| char | int | Расширение нулем или знаком в зависимости от умолчания для char |
| unsigned char | int | Старший байт заполняется нулем |
| signed char | int | Расширение знаком |
| short | int | Сохраняется то же значение |
| unsigned short | unsigned int | Сохраняется то же значение |
| enum | int | Сохраняется то же значение |
| битовое поле | int | Сохраняется то же значение |
На рисунке стрелками отмечены "безопасные" арифметические преобразования, гарантирующие сохранение точности и неизменность численного значения.
|
При преобразованиях, которые не отнесены схемой к безопасным, возможны существенные информационные потери. Преобразование целочисленных значений в вещественные осуществляется настолько точно, насколько это предусмотрено аппаратурой., Если конкретное целочисленное значение не может быть точно представлено как целочисленное, то младшие значащие цифры теряются и обратимость невозможна.
Приведение вещественного значения к целому типу выполняется за счет отбрасывания дробной части. Преобразование целой величины в вещественную также может привести к потери точности.
Дата добавления: 2015-10-09; просмотров: 1129;
