Good day.
I would be grateful if someone explained why floor() and ceil() functions (math.h) return double or float values. As far as I understand they just round up the parameter and by definition return an int in any case.
???
Well, the range of a double is even greater than the range of a float, but even a simple float can represent the integer 340282346638528859811704183484516925440, which is too big to fit in a int, or even in an unsigned long long int.