<div>Moises y Steven, gracias por la aportación.</div>
<div> </div>
<div>Anexo el extracto del codigo. (no lo he compilado porque tenemos un pequeño problema con el filesystem en donde se encuentran lo datos).</div>
<div> </div>
<div> tamanio = getfilesize(f1);<br> fseeko64 (f1, 3200+17-1, SEEK_SET);<br> fread (&int2, sizeof(int2), 1, f1); <br> _si = entero2(int2)/1000000.;<br> fseeko64 (f1, 3200+21-1, SEEK_SET);<br> fread (&int2, sizeof(int2), 1, f1); <br>
_nsmp = entero2(int2);<br> fseeko64 (f1, 3200+25-1, SEEK_SET);<br> fread (&int2, sizeof(int2), 1, f1); <br> _frmt = entero2(int2);<br> if (_frmt==3) _smpl=2;<br> else if(_frmt==6) _smpl=1;<br> else _smpl=4;<br>
// Tama#o de la traza (bytes)<br> _trl = 240+_nsmp*_smpl; <br> // Numero de trazas<br> _ntr=(tamanio-3600)/(_trl);</div>
<div><font style="BACKGROUND-COLOR: #ffff00"> //Crear el buffer <br> unsigned char *_buffer = (unsigned char *) malloc( _ntr );</font></div>
<div> // Escribir el encabezado del SEGY<br> fseeko64 (f1, 0, SEEK_SET);<br> bytesLeidos = fread(_binhed, 1, sizeof(_binhed), f1);<br> fwrite(_binhed, 1, bytesLeidos, fs);</div>
<div> for (n=1;n<=_ntr;n++)<br> {<br> fseeko64 (f1, 3600+((n-1)*_trl), SEEK_SET);<br> fread (&_trched, sizeof(_trched), 1, f1);<br> <br> int4[0]=_trched[17-1];<br> int4[1]=_trched[17-0];<br>
int4[2]=_trched[17+1];<br> int4[3]=_trched[17+2];<br> <br> // Grabar el dato si el SP corresponde con el indicado en parametros.<br> if (SP==entero4(int4))<br> {<br> fseeko64 (f1, 3600+((n-1)*_trl), SEEK_SET);<br>
bytesLeidos = fread(_buffer, 1, sizeof(_buffer), f1);<br> fwrite(_buffer, 1, bytesLeidos, fs);<br> }<br> }</div>
<div> // Liberar el buffer<br> free( _buffer );<br> <br> /* Cerramos el fichero */<br> fclose(f1);<br> fclose(fs);</div>
<div> </div>
<div> </div>
<div>Saludos desde Villahermosa, Tabasco, Mexico, America, Tierra.</div>
<div>José Luis</div>
<div><br> </div>
<div class="gmail_quote">2010/6/2 Moises Brenes <span dir="ltr"><<a href="mailto:moises.brenes@gmail.com">moises.brenes@gmail.com</a>></span><br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">2010/6/2 Steven Davidson <<a href="mailto:srd4121@njit.edu">srd4121@njit.edu</a>>:<br>> Hola "anonymous" y Moisés,<br>
<div class="im"><br>> Esto no es correcto. Ten presente que "anonymous" quiere que la cantidad,<br>> que será un número entero, se pase como parámetro. Sin embargo, los<br>> parámetros del programa son cadenas de caracteres. Por lo tanto, lo que se<br>
> tendría que hacer es convertir la cadena a un número entero y luego usar ese<br>> número como la cantidad de elementos del "búfer". Esto es,<br><br></div>Si, me falto ser mas claro, y no obviar que se debe convertir<br>
<div>
<div></div>
<div class="h5"><br>><br>> Espero haber aclarado la duda,<br>><br>> Steven<br><br>_______________________________________________<br>Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br>
</div></div></blockquote></div><br>