
Boost : 
From: Gabriel Dos Reis (gdr_at_[hidden])
Date: 20030417 04:30:52
Ross Smith <rsmith_at_[hidden]> writes:
[...]
  7.12.7.4 The pow functions
  Synopsis
  #include <math.h>
  double pow(double x, double y);
  float powf(float x, float y);
  long double powl(long double x, long double y);
  Description
  The pow functions compute x raised to the power y. A domain error
  occurs if x is finite and negative and y is finite and not an
  integer value. A domain error may occur if x is zero and y is less
  than or equal to zero. A range error may occur.
  Returns
  y
  The pow functions return x .

 C99 has no separate integerexponent version of pow(), that one is
 purely a C++ artifact.
So?
That C99 does not have integerexponent version of pow() is a
deficient from my point of view. And in effect, C library
implementations do internal checks to see whether the exponent is an
integer and branch accordingly. I see the lack of that function in C
as an indirect consequence of lacking overloading.
 Gaby
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk