Прогнозировать вывод следующей программы:
Можно ли использовать% с числами с плавающей запятой в C ++?
|
Приведенная выше программа завершается неудачно при компиляции, и компилятор сообщает о следующей ошибке в строке 5:
Выход:
invalid operands of types 'float' and 'float' to binary 'operator%'
Оператор% нельзя использовать с числами с плавающей запятой в C & C ++.
Как насчет Java и C #?
Это поведение отличается в Java & C #. Оператор% может использоваться для чисел с плавающей запятой на этих языках.
Рассмотрим следующий пример Java- программы:
|
Выход:
3.2999997
Точно так же попробуйте эту программу на C # . Работает нормально:
|
Выход:
3.3
Эта статья предоставлена Meet Pravasi . Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме
Рекомендуемые посты:
- Точность чисел с плавающей точкой в C ++ (floor (), ceil (), trunc (), round () и setprecision ())
- Как посчитать набор бит в числе с плавающей запятой в C?
- Преобразовать число с плавающей запятой в строку в C
- Операции с плавающей точкой и ассоциативность в C, C ++ и Java
- Округление числа с плавающей запятой до двух десятичных знаков в C и C ++
- C ++ Манипуляция с плавающей запятой (fmod (), remainder (), remquo () … в cmath)
- Почему переопределение как глобального нового оператора, так и оператора, специфичного для класса, не является двусмысленным?
- Вращение точки относительно другой точки в C ++
- оператор карты = в C ++ STL
- карта :: оператор [] в C ++ STL
- оператор set = в C ++ STL
- новый против оператора новый в C ++
- оператор точки (.) в C / C ++
- Оператор unordered_set == в C ++ STL
- Оператор unordered_set! = в C ++ STL
0.00 (0%) 0 votes