What is the limit of the rank of the power of a matrix? The problem is about $rank (\mathbf{A}^k)$ when $k \rightarrow \infty$ for a $n\times n$ matrix $\mathbf{A}$.
I know that for a nilpotent matrix, $\mathbf{A}^k=0$ when $k$ is big enough, which means $rank(\mathbf{A}^k) \rightarrow 0$ when $k \rightarrow \infty$.
And for a nonsingular matrix, $\mathbf{A}^k$ is also nonsingular and $rank(\mathbf{A}^k)$  is the No. of the columns/rows.
So my question is that is there any general theorem that tells us the result for a general square matrix.
Thanks!

Since the image of $A^{k+1}=A^k\,A$ is included in the image of $A^k$, we have that the function $k\longmapsto \text{rank}(A^k)$ is non-increasing. As the only possible values are $\{1,\ldots,n\}$ the numbers $\text{rank}(A^k)$ have to stabilize in a finite number of steps. 
If the rank of $A^{k+1}$ is equal to the rank of $A^k$, this forces the image of $A^{k+1}$ to be equal to that of $A^k$, and thus the rank stabilizes.  
So, the possible ranks will be a strictly decreasing sequence of positive integers until it stabilizes. 
Here is an example that shows that one can start at any rank $h$, and decrease until rank $m$. Let $B$ be nonsingular $m\times m$ and $C$ an  $(h-m+1)\times (h-m+1)$ Jordan block with zero diagonal. Consider
$$
A=\begin{bmatrix}B&0\\0& C\end{bmatrix}.
$$
Then $$\text{rank}(A^k)=\begin{cases}h-k,&\ k\leq \ h-m\\ m,&\ k>r\end{cases}$$
