You have a proof which uses the fact that maximal compact open subgroups correspond to vertices in the building of ${\rm GL}(n)$. For instance for the Cartan decomposition you want to classify the orbits of $K={\rm GL}(n,{\mathfrak o}_F)$ (${\mathfrak o}_F$ denotes the ring of integers of your p-adic field $F$) in the vertex set of the building. To the aim, you first use the fact that $K$ acts transitively on the apartments containing the vertex fixed by $K$. This way you may send any pair of vertices $(s,t)$ in a fixed apartment $A$. The stabilizer of $s$ acts transitively on the Weyl chambers and you may assume that $t$ lies in a fixed Weyl chamber. From this it's easy to prove that
$$
t={\rm Diag}(\varpi_F^{k_1},...,\varpi_F^{k_n}).s
$$
where e.g. $k_1 \geq k_2 \geq ...\geq k_n$ and where $\varpi_F$ is a uniformizer of $F$.
Similarly the Iwasawa decomposition $G=KB$ corresponds to the fact that $K$ acts transitively on the germs of "quartiers" (you may prove this using the fondamental properties of the building stated in Bruhat-Tits, IHES, volume 1).
In fact doing the proofs this way is cheating ! For Bruhat and Tits prove the basic properties of the building by using properties of the valuated root datum, that is by doing row and column operations on matrices ...
But even if these proofs are not geniune "proofs", they allow you to "visualize" why these decompositions hold.