The function cartesianToPolar() is void, therefore the function returns no result, with both the desired values being entered directly into addresses. But the function modf() also returns two essential values, with the difference that in this case, one (integerPart) is the direct result of the function, with only one being returned by reference.

So it looks like there are two different ways of achieving the same goal (if I’ve understood correctly). Are there circumstances where you’d favour one way over the other?