When do I use fabs and when is it sufficient to use std::abs?
I assume that abs and fabs are behaving different when using math.h . But when I use just cmath and std::abs , do I have to use std::fabs or fabs ? Or isn't this defined? In C++, it's always sufficient to use std::abs ; it's overloaded for all the numerical types. In C, abs only works on integers, and you need fabs for floating point values. These are available in C++ (along with all of the C library), but there's no need to use them. It's still okay to use fabs for double and float arguments. I prefer this because it ensures that if I accidentally strip the std:: off the abs , that the