Can a number have infinitely many digits before the decimal point? I asked my teacher if a number can have infinitely many digits before the decimal point. He said that this isn't possible, even though there are numbers with infinitely many digits after the decimal point. I asked why and he said that if you keep adding digits to the left of a number it will eventually approach infinity which is not a number and you could no longer distinguish two numbers from one another.
Now this is the part of his reasoning I don't understand: why can we distinguish two numbers with infinitely many digits after the point but not before it? Or is there a simpler explanation for this?
The formal way to understand this is, of course, using the definition of real numbers. 
A real number is "allowed" to have infinite digits after the decimal point, but only a finite number of digits before. (http://en.wikipedia.org/wiki/Real_number)

(if it interests you, there are numbers that have infinite digits before the decimal point, and only a finite number after. Take a look at http://en.wikipedia.org/wiki/P-adic_number . just to have some fun, know that the $10$-adic expansion of $-1$ is $\color{red}{\dots 99999} = -1$)

If you want to get some intuition about this, first think that, as your teacher said, said number would approach infinity, which is not a real number. This is reason enough.

About the comparing two numbers part: if I give you $$1234.983...$$ and $$1234.981...$$
you know which one is bigger, it does not matter what the other digits are.

But with $$...321.99$$, $$...221.99$$ you don't, because the information relies in the "first" digit. Of course nobody know what the first digit is, since there is no first digit.

But as I said before, this is to gain some intuition; the correct way to think about this is using the definition (which is not trivial)
It's a matter of semantics and definition.  Technically, since integers are a subset of real numbers and there are an infinite number of them, you can have an infinite number of digits; however, for the sake of defining properties, and defining numeric fields, you limit the number of digits to n... which can be as large as you like.

So, yes, you CAN have an infinite number of digits - because you can always make your number larger by multiplying it by 10, say - but, for the sake of definition and math theory, it is NOT possible, by nature of its definition.