[Tech] Problemi con il C

Claudio Kutufà claudiok@nexusfi.it
Mer 5 Maggio 2004 10:10:02 CEST


>unsigned char *p:
>p=(unsigned char *)calloc(size,sizeof(unsigned char));
>
>dove size gli viene passato in fase di chiamata.

Se per caso size è inferiore a 32.000 ecco che puoi cercare di accedere, in 
fase di scrittura su buffer, a zone di memoria che non ti appartengono. In 
pratica tu scrivi correttamente sul file tutti dati che vuoi salvare, poi 
vai su zone di memoria non tue, il programma esce, il S.O. chiude il file, 
e tu apparentemente ottieni (guardando in faccia il file) un risultato 
corretto.

secondo me dovresti usare una istruzione:
SalvaBuffer(buffer, size)

in modo da non sforare mai

ciao
Claudio

+++++++++++++++++++++++++++++++++++++++++++++++++++++
Ing. Claudio Kutufa'
NEXUS SISTEMI INFORMATIVI S.P.A.
e-mail personale: claudiok@nexusfi.it
tel. cellulare: 335 5859567
Sede Oper.va : Via Dante da Castiglione, 33
Tel. : +39 055 229413 Fax : +39 055 229785
50125 Firenze - Italy
Sede Amm.va : Via Panciatichi 40/11
Tel. : +39 055 4222030 Fax : +39 055 4376670
50100 Firenze - Italy
Nexus home page: www.nexusfi.it
+++++++++++++++++++++++++++++++++++++++++++++++++++++




Maggiori informazioni sulla lista flug-tech