C++ template syntax exists in addition to all of the C type syntax. And it adds its own ugliness besides (such as knowing when you can say T vs having to say typename T).
It's not like there is an array<int> or ptr<int> syntax that can replace int[] or int*.