* Tienes errores en los punteros del array bidimensional, que han de ser **, tanto en su declaración como en los argumentos de las funciones.
* Se te ha ido la olla al hacer mat[ i , j ] en lugar de mat [ i ][ j ]
* Tienes mal declarado el array bidimensional con el operador new.
* Te falta el return de main.
Con esas correcciones o puntualizaciones, ya que el resto del código es el tuyo, y tabulando o indentando el código de forma más razonable -no escatimes con los espacios en blanco, si no queda todo apelotonado- una posible solución, según tienes planteado, sería:
EI: codigo suprimido.
Por cierto, si quieres la suma de la diagonal no olvides que fil = col. Y si han de ser iguales te puedes ahorrar un cin, tomando col = fil si la matriz ha de ser del tipo n x n.
* Se te ha ido la olla al hacer mat[ i , j ] en lugar de mat [ i ][ j ]
* Tienes mal declarado el array bidimensional con el operador new.
* Te falta el return de main.
Con esas correcciones o puntualizaciones, ya que el resto del código es el tuyo, y tabulando o indentando el código de forma más razonable -no escatimes con los espacios en blanco, si no queda todo apelotonado- una posible solución, según tienes planteado, sería:
EI: codigo suprimido.
Por cierto, si quieres la suma de la diagonal no olvides que fil = col. Y si han de ser iguales te puedes ahorrar un cin, tomando col = fil si la matriz ha de ser del tipo n x n.