Ancora C - chiedo venia -

Collapse
X
 
  • Filter
  • Ora
  • Show
Clear All
new posts
  • NL84
    Bodyweb Member
    • Jan 2002
    • 992
    • 2
    • 0
    • monte olimpo
    • Send PM

    Ancora C - chiedo venia -

    Ciao ragazzi,
    mi scuso per l'ennesimo post che riguarda il C. Pensavo di aver dominato certe questioni (tipo i puntatori), ma evidentemente i miei segmentation faults dicono il contrario...
    Ecco il codice (la parte fastidiosa)

    struct svd_result{
    double *eigen_val;
    double *u;
    double *v;
    };

    void cb_svd(struct svd_result *svd_res, double *X, int *nrX, int*ncX)
    {
    double ini_eigen_val[*ncX], ini_u[*nrX**ncX], ini_v[*nrX**ncX], *rv1, ini_rv1[*ncX];
    svd_res->eigen_val=&ini_eigen_val[0];
    ....
    }

    Quindi vedete che ho fatto una struttura che contiene dei puntatori. La funzione cb_svd ha come primo argomento un puntatore a struttura. Nella prima riga della funzione creo degli array che serviranno da "presta-indirizzo" ai puntatori contenuti nella struttura puntata. Come di consueto, almeno da come ho imparato io casarecciamente, i puntatori li faccio puntare ad un array e poi utilizzo questi benedetti puntatori in modo ooportuno. Non capisco perchè al C la riga

    svd_res->eigen_val=&ini_eigen_val[0];

    non piace...qualcuno ha qualche indizio?

    Vi dico già che presagisco che una volta chiamata la funzione più di una volta i risultati salvati in res_svd verranno sovrascritti, ma mi da estremo fastidio non capire cosa c'è che non va in questa mia funzione.
    To failure
    sigpic

    Diario
    http://www.bodyweb.com/forums/blogs-...ml#post5990915

Working...
X