Risolto, posto il codice come sempre, grazie a tutti!!!

codice:
#include<iostream>
#include<cstdlib>
using namespace std;
 
 
void leggi_matrice(int* matrice, int N)
{
    for(int i = 0; i < N; i++)
        for(int j = 0; j < N; j++)
        {
            cout << "Inserisci l'elemento della riga " << i << " e della colonna " << j << "." << endl;
            cin >> matrice[i*N+j];
        }
}
 
void somma_vettore(int *vettore, int *matrice, int N)
{
    for(int nc = 0; nc < N; nc++)
    {
        int lim_sup = 0; // la clessidra delimita una parte della colonna
        int lim_inf = 0;
        // ne calcolo gli estremi in base all'indice della colonna stessa
        if(nc<N/2) // se operiamo su una colonna con indice minore della metà del numero di colonne
        {
            lim_sup = nc; // l'estremo superiore è uguale all'indice della colonna
            lim_inf = N-1 - nc; // l'estremo inferiore è uguale all'indice dell'ultima riga meno l'estremo superiore (nc)
        } else { // se operiamo su una colonna con indice maggiore o uguale alla metà del numero di colonne è il contrario
            lim_inf = nc; // l'estremo inferiore è uguale all'indice della colonna
            lim_sup = N-1 - nc; // l'estremo superiore è uguale all'indice dell'ultima riga meno l'estremo inferiore (nc)
        }
       
        for(int nr = lim_sup; nr <= lim_inf; nr++)
            vettore[nc] += matrice[nr*N+nc];
    }
}
 
void stampa_vettore(int *vettore, int N)
{
    for(int i = 0; i < N; i++)
        cout << "La somma della colonna con indice " << i << " vale " << vettore[i] << endl;
}
 
int main(int argc, char **argv)
{
 
    cout << "Inserisci il numero N di righe e colonne" << endl;
    int N;
    cin >> N;
   
   
    int *matrice ;
	matrice= (int*)malloc(N*N*sizeof(int)); // alloco memoria per una matrice di N righe e N colonne di interi
                                                  // ne memorizzo l'indirizzo in 'matrice'
   
    leggi_matrice(matrice,N); // inserisco manualmente i valori degli elementi della matrice
   
    int *vettore; 
	vettore=(int*)calloc(N,sizeof(int));   // alloco memoria per un vettore di cardinalità N inizializzando tutti gli interi memorizzati a 0
                                                  // ne memorizzo l'indirizzo in 'vettore'
   
    somma_vettore(vettore, matrice, N);
    stampa_vettore(vettore,N);
   
    // libero la memoria allocata dinamicamente
    free(vettore);
    free(matrice);
   
 
}