In addition to Michael Renardy's reference, another proof (obtained perhaps independently?) was given by Sierpinski in 1921.

Sierpiński, W.
Sur l'ensemble des points de convergence d'une suite de fonctions continues. (French)
[J] Fundamenta math. 2, 41-49 (1921). ZMath Link

(It has the advantage of (a) being in French so I can actually understand it and (b) published in a Journal which now offers [I think] open access to the old articles; one can obtain a copy by searching here.)

The main theorem in the paper states the following (all sets are subsets of $\mathbb{R}$):

**Theorem** For a set $E$ to be the set of convergence points of a sequence of continuous functions $f_1, f_2, \ldots$ (meaning that $f_n(x)$ converges if and only if $x\in E$) it is necessary and sufficient that $E$ be $F_{\sigma\delta}$

The proof proceeds via a series of Lemmas.

**Lemma 1** Any $F_\sigma$ can be decomposed into the sum of an $F_\sigma$ with no interior points which we call $P$ with an at most countable collection of mutually disjoint intervals whose endpoints all appear in $P$.

**Lemma 2** An $F_\sigma$ which contains no interior points can be written as a sum of at most countably many disjoint closed sets.

Together the above yields

**Lemma 3** An $F_\sigma$ can be written as a union of $P\cup Q$ where $P$ can be written as an at most countable union of mutually disjoint closed sets and $Q$ can be written as an at most countable union of mutually disjoint intervals whose endpoints lie in $P$.

Given the above we have

**Lemma 4** For $E$ an $F_\sigma$ there exists a sequence of bounded continuous functions which converge to 0 on $E$ and does not converge otherwise.

*Sketch of construction*:

Write $E = P \cup Q$ as above. Write $P = F_1 \cup F_2\cdots$ where the $F_i$ are mutually disjoint. Let $S_n = \cup_1^n F_i$. Let $\delta_n = \mathrm{dist}(S_n,F_{n+1}) > 0$ since we have disjoint closed sets. Let $T_n = \{ x : \mathrm{dist}(S_n,x) \geq \delta_n / (3 + n \delta_n) \}$.

Define a sequence of functions $\varphi_n(x)$ such that for $n$ odd, $\varphi_n \equiv 0$. For $n = 2k$ even, let $\varphi_n(x) = 1$ on $T_k$ and $0$ on $S_k$, and linearly interpolate in between (we can do this because $T_k\cup S_k$ is closed and its complement is a union of open intervals).

Now define $f_n(x)$ to be equal to $\varphi_n(x)$ on the complement of the interior of $Q$. The remaining portion is again a union of open intervals so we can interpolate linearly on it.

It is clear that $f_n$ converges to 0 on $E$ by definition. It takes a little bit of computation to show that for $x\not\in E$, $\limsup f_n(x) = \limsup \varphi_n(x) = 1$.

*Sketch of construction for the Theorem*

Now let $E = E_1 \cap E_2 \cap \cdots$ where $E_k$ are $F_\sigma$. Let $\tilde{f}_{k,n}(x)$ denote the sequence found by applying Lemma 4 to $E_k$. Let $\bar{f}_{k,n}(x) = \frac{1}{k} \tilde{f}_{k,n}$. The sequence we want in the theorem can be obtained by the diagonal method:

$$ f_1 = \bar{f}_{1,1} \quad f_2 = \bar{f}_{2,1} \quad f_3 = \bar{f}_{1,2} \quad f_4 = \bar{f}_{3,1} \ldots $$