Does a function that satisfies the equality $f(a+b) = f(a)f(b)$ have to be exponential?
First see that $f(0)$ is either 0 or 1. If $f(0)=0$, then for all $x\in\mathbb R$, $f(x)=f(0)f(x)=0$. In this case $f(x)=0$ a constant function.
Let's assume $f(0)=1$. See that for positive integer $n$, we have $f(nx)=f(x)^n$ which means $f(n)=f(1)^n$. Also see that: $$ f(1)=f(n\frac 1n)=f(\frac 1n)^n\implies f(\frac 1n)=f(1)^{1/n}. $$ Therefore for all positive rational numbers: $$ f(\frac mn)=f(1)^{m/n}. $$ If the function is continuous, then $f(x)=f(1)^x$ for all positive $x$. For negative $x$ see that: $$ f(0)=f(x)f(-x)\implies f(x)=\frac{1}{f(-x)}. $$ So in general $f(x)=a^x$ for some $a>0$.
Without continuity, consider the relation: $xRy$ if $\frac xy\in \mathbb Q$ (quotient group $\mathbb R/\mathbb Q$). This relation forms an equivalence class and partitions $\mathbb R$ to sets with leaders $z$. In each partition the function is exponential with base $f(z)$.