Salve ragazzi avrei un problema con la somma di n matrici fatte con i puntatori. Ho provato a fare qualcosa vedendo qua e la su internet, ma il programma mi da errore(l'inserimento funziona). Avete suggerimenti su come fare la somma di n matrici con i puntatori ?

codice:
#include <stdio.h>
#include "stdafx.h"
#include <io.h>
#include <iostream>
#include <iomanip>
#include <ctype.h>
#include <math.h>
 
using namespace std;
 
int i, j;
int n;
int **matrice;
int righe, colonne;

void main()
{
 
       cout << "Inserisci il numero delle matrici"<<endl;
       cin >> n;
      
       for (int z = 0;z < n; z++)
       {
 
 
             cout << "Inserisci il numero di righe della Matrice "<< z+1 <<endl;
             cin >> righe;
             cout << "Inserisci il numero di colonne della Matrice " << z+1 << endl;
             cin >> colonne;
 
             matrice = new int *[righe];
             for (i = 0; i < righe; i++)
                    matrice[i] = new int[colonne];
 
             cout << "Inserimento Matrice Dinamica " << endl;
             inserimento_matrice_dinamica(matrice, righe, colonne);
 
             cout << "La somma delle n matrici e : " << endl;
             Somma(matrice, righe, colonne);
 
             system("PAUSE");
  
             for (i = 0; i < righe; i++)
                    delete matrice[i];
 
             delete matrice;
       }
 
void inserimento_matrice_dinamica(int **m, int r, int c)
{
       int i, j;
 
       for (i = 0; i<r; i++)
       for (j = 0; j<c; j++){
             cout << "Inserisci Elemento " <<"("<< i+1<< "," << j+1 << ")"<< " ";
             cin >> m[i][j];
       }
}
 
int Somma(int **m, int r, int c)
{      int p;
        int somma =0;
       for ( i = 0; i < n; i++)
       {
            p=m[i][j];
            p++;
           somma+=p;

       }
cout<< somma;
}