12. (12 points) Given $S=\frac{1}{9}+\frac{1}{99}+\frac{1}{999}+\cdots+\frac{1}{1000 \text { nines }}$, then the 2016th digit after the decimal point of $S$ is
【Solution】Solution: According to the analysis,
$$
\begin{array}{l}
S=\frac{1}{9}+\frac{1}{99}+\frac{1}{999}+\cdots+\frac{1}{1000 \uparrow 9}=0 . \dot{1}+0.01+0.001^{+} 0.0001^{+\cdots}+0.999 \text {  zeros }; n \uparrow 9= \\
0_{n-1 \text { zeros}} 1
\end{array}
$$
The 4th, $n$th, $2n$th, $3n$th, ... positions after the decimal point are all 1, when $n$ is a divisor of 2016, the 2016th position after the decimal point is 1, otherwise, the 2016th position after the decimal point is 0. 
$2016=2^{5} \times 3^{2} \times 7$, has $(5+1) \times(2+1)(1+1)=36$ divisors, and there are two divisors greater than 1000: 1008, 2016, so there are $36-2=34$ divisors not greater than 1000;

Without considering the carry, there are 34 ones added at this position, so the digit at this position is 4.
Now consider the carry,
2017th position: 2017 is a prime number, so there is only 1 one added at the 2017th position, which does not cause a carry;
2018th position: $2018=2 \times 1009$, has 4 divisors, so there are 2 ones added at the 2018th position, which also does not cause a carry; positions 2019 and beyond are insufficient to carry to the 2016th position;

In summary, the 2016th position after the decimal point of $S$ is 4.
Therefore, the answer is: 4.