The limit of a function f(x) as its argument x approaches some value x0 is a
real number, call it L that f(x) gets closer and closer to as x approaches x0.
The value should not depend on how x approaches x0.
When f is a well behaved continuous function in a region about x0 then
the limit as x approaches x0 of f(x) is f(x), so in this case:
lim(x->x0) f(x) = f(x0).
Now there are many ways in which the function can be badly behaved
1. f can be discontinuous at the point, an example is a jump discontinuity
such as the following function has at x=0:
f(x).= x+1, x<0
......= x, x>=0.
Then as x approaches 0 from below (often written x->0-) f(x) approaches
1, while if it approaches x0 from above (often written x->0+) f(x)
approaches 0. As these are not equal we say that f(x) does not have
a limit as x approaches 0.
2. Another way that f can be discontinuous at a point is if it goes to
infinity there. While we might write in this case:
lim(x->x0) f(x) = infty,
we would say that the limit does not exists (as infty is not normally
considered a number).
3. A third interesting case is exemplified by the "sinc" function which
you will find used frequently in engineering applications, this is defined
sinc(x) = sin(x)/x, x!=0,
..........= 1, x=0.
The first line of the functions definition has to exclude the point x=0 as
sin(x)/x is an indeterminate form when x=0 (we are not allowed to divide
by 0). But for small x: sin(x)~=x, with the approximation becoming better and
better as x becomes smaller and smaller. So we might expect:
lim(x->0) sin(x)/x = 1.
which indeed it does when one does the analysis of the problem rigorously.
Because of this the sinc function is continuous at x=0.
I hope that helps, I'm sure I have missed lots of interesting points that
others will fill in.