It should be pointed out that something implicit is happening in this Cantor Diagonal Construction argument (see MathTrain's answer). Recall,
A decimal representation of a non-negative real number $r$ is an expression in the form of a series, traditionally written as a sum
${\displaystyle r=\sum _{i=0}^{\infty }{\frac {a_{i}}{10^{i}}}}$
where $a_0$ is a nonnegative integer, and $a_1, a_2, ...$ are integers satisfying $0 \le a_i \le 9$, called the digits of the decimal representation.
The representation is unique up to the fact that if the ${a_i}^{'}s$ trail off in $9^{'}$s it can be simplified.
This representation is really a statement on the limit of a sequence (convergence),
$\tag 1 r=\lim _{n\to \infty }\sum _{i=0}^{n}{\frac {a_{i}}{10^{i}}}$
The Cantor argument is constructing the $a_i$ for (1) one step at a time, so that for any $N$, none of the $N + 1$ finite expansion sums
$\tag 2 s_n = \sum _{i=0}^{n}{\frac {a_{i}}{10^{i}}} \; n \le N$
can be equal to any of the first $N+1$ 'matrix rows', and that also holds true as the limits are taken.
So there are assumptions being made during the Cantor construction, the underlying facts about decimal representations of real numbers.
Finally, although it can be handled, that little detail about trailing $9^{'}$s needs to be addressed in a rigorous proof. You might want to skip that and study a Cantor proof showing that the binary sequences, $2^{\mathbb{N}}$, is uncountable (and more).
If you look at related material in math.stackexchange, for some inexplicable reason, many people have questions about Cantor's Diagonal Argument. So, as this is the most recent instance, permit me the liberty of simply giving another proof that the real numbers are uncountable.
Recall the following property of real numbers,
Theorem 1: Let $(s_n)$ be a sequence of real numbers satisfying the following conditions,
$\quad s_0 \lt s_2 \lt s_4 \lt \cdots$
$\quad s_1 \gt s_3 \gt s_5 \gt \cdots$
$\quad \text{For every even } i \in \mathbb{N}\text{, } \; s_i \lt s_{i+1}$
$\quad \text{The alternating sequence } s_{k+1} - s_k \text{ converges to } 0$
Then $(s_n)$ converges to the limit $s= \text{LUB} \, \{s_i \, |\; i \text{ is even} \} = \text{GLB} \, \{s_i \, |\; i \text{ is odd} \}$,
and for every $n \in \mathbb{N}$, $s_n \ne s$.
Theorem 2: The set of all real numbers is an uncountable set.
Proof
To arrive at a contradiction, let $f: \mathbb{N} \to \mathbb{R}$ be a surjective mapping. We claim that we can construct a sequence $(s_n)$ satisfying the conditions of theorem 1 with a limit that can't be in the range of $f$, giving the contradiction.
Set $s_0 = f(0)$.
Let $m_1$ be the smallest integer satisfying $f(m_1) \gt s_0$, and set $s_1 = f(m_1)$.
Let $m_2$ be the smallest integer satisfying $f(m_2) \gt s_0$ and $f(m_2) \lt s_1$, and set $s_2 = f(m_2)$.
Let $m_3$ be the smallest integer satisfying $f(m_3) \lt s_1$ and $f(m_3) \gt s_2$, and set $s_3 = f(m_3)$.
etc.
Note that the increasing sequence $(m_j)$ of integers must be unbounded.
It is not difficult to show that $(s_n)$ satisfies the conditions of theorem 1; let $\alpha$ denote this limit. Observe that $f$ can't take on the value of $\alpha$, for if it did, $\alpha$ would have to appear as a term in the constructed $(s_n)$ sequence, since it is inside the alternating $(s_n$) 'clamp-down', and we keep going further out along the domain of $f$ to construct this converging sequence..
$\blacksquare$
Note: In the proof of theorem 2 we only used the fact that the range of $f$ is dense in $\mathbb{R}$, and from that constructed a number $\alpha$ that $f$ can't assume as an output value.
(0,1)
are countable essentially is the assumption that you can store the reals as rows in a matrix (with a countable infinity of both rows and columns) of digits. You are correct that this is impossible. Your hand-waving about square matrices and precision doesn't show that it is impossible. Cantor's diagonal argument does show that this is impossible, hence the reals are not countable. – John Coleman Aug 24 '17 at 18:12