Разница между функциями abs() и fabs() в C++ заключается в том, что abs() работает только с целыми числами, а fabs() — с дробными. 1
abs() возвращает абсолютное значение целочисленного числа. 2 Если число отрицательное, функция вернёт положительное значение (с той же величиной), например, abs(-1) = 1. 2 Если число уже положительное или равно нулю, функция вернёт его как есть, например, abs(1) = 1. 2
fabs() возвращает абсолютное значение числа типа int, float или double. 2 В случае типа char — возвращает ASCII-код этого символа. 2
Таким образом, если требуется модуль вещественного числа, следует использовать fabs(), а для целых чисел — abs(). 1