#C 36

If just a function is allowed, then even c can compete.

 f(a,c){printf("%s\n%*s\n",a,c,"^");}