When you have a 0^0 limiting form (or 0/0, or 0 * infinity), the function's behavior is indeterminate. The "0" and "infinity" you're looking at aren't precisely 0 or infinity, but only arbitrarily close. The actual behavior of the function depends on the expressions that approach 0 and infinity, hence `x/(x+1)` and `x/e^x` having different limiting behaviors as x increases without bound.
But if you are literally considering the function at a specific point which produces a so-called indeterminate form, the answer is simpler. In some cases, the function is undefined (e.g. 1/x where x=0). In the case of 0^0, there is a precise value we can assign: 1. And this doesn't conflict with the 0^0 limiting form: the limit of a function at a point can be different from the actual value of the function at said point.
A quote of Knuth, taken from Wikipedia (http://en.wikipedia.org/wiki/Exponentiation#Zero_to_the_powe...):
> Knuth (1992) contends strongly that 0^0 "has to be 1", drawing a distinction between the value 0^0, which should equal 1 as advocated by Libri, and the limiting form 0^0 (an abbreviation for a limit of f(x)^g(x) where f(x), g(x) -> 0), which is necessarily an indeterminate form as listed by Cauchy: "Both Cauchy and Libri were right, but Libri and his defenders did not understand why truth was on their side."
infinity * n = infinity, right?
0 * n = 0, right?
0 * infinity = ?
Ok, this is relevant here particularly because:
Lim 1/x as x -> 0 from the positive side is infinity, right?
So 0 * that is.....
lim 1/x as x -> from the negative side is negative infinity, right?
So 0 * that is.....
That's why 0/0 doesn't work as such. You don't know how 0 is derived or what it means. If we have x^2/x, and take the limit as x -> 0, we get 0. If we take x/x^2 and take the limit as x -> 0 we get +/- infinity.
But that doesn't mean that x/x or x^2/x are not continuous functions, any more than 1 or x are not continuous functions.