Q: Why doesn't C have an exponentiation operator?
A: One reason is probably that few processors have a built-in exponentiation instruction. C has a pow function (declared in <math.h>) for performing exponentiation, although explicit multiplication is usually better for small positive integral exponents. [footnote] In other words, pow(x, 2.) is probably inferior to x * x. (If you're tempted to make a Square() macro, though, check question 10.1 first.)
ISO Sec. 220.127.116.11
H&S Sec. 17.6 p. 393