<div>Hola a todos,</div>
<div> </div>
<div>Soy nuevo en programacion en C, estoy leyendo archivos SEGY y extraigo valores de trazas completas. (un archivo SEGY se compone de 3200 bytes para EBCDIC, 400 bytes para el encabezado binario e indica el tamaño de la traza, la traza que se compone de 240 bytes de encabezado y el numero de muestras definido en el encabezado binario).</div>

<div> </div>
<div>Solicito su ayuda para que me orienten a modificar el siguiente codigo, a fin de poder indicar mediante un parametro el tamaño de buffer que sería el tamaño de la traza sismica a copiar.</div>
<div> </div>
<div><font size="1" face="courier new,monospace">// copia.c: Copia de ficheros<br>// Uso: copia <fichero_origen> <fichero_destino></font></div>
<div><font size="1" face="courier new,monospace">#include <stdio.h></font></div>
<div><font size="1" face="courier new,monospace">int main(int argc, char **argv) {<br>    FILE *fe, *fs;<br>    unsigned char buffer[<font style="BACKGROUND-COLOR: #ffff00">2048</font>]; <font style="BACKGROUND-COLOR: #ffff00">// <<== El tamaño quiero tomarlo como parametro para no volver a comiplar el programa.</font><br>
    int bytesLeidos;<br>    int bytesheader;</font></div>
<div><font size="1" face="courier new,monospace">    if(argc != 3) {<br>       printf("Usar: copia <fichero_origen> <fichero_destino>\n");<br>       return 1;<br>    }</font></div>
<div><font size="1" face="courier new,monospace">    // Abrir el fichero de entrada en lectura y binario<br>    fe = fopen(argv[1], "rb"); <br>    if(!fe) {<br>       printf("El fichero %s no existe o no puede ser abierto.\n", argv[1]);<br>
       return 1;<br>    }<br>    // Crear o sobreescribir el fichero de salida en binario<br>    fs = fopen(argv[2], "wb"); <br>    if(!fs) {<br>       printf("El fichero %s no puede ser creado.\n", argv[2]);<br>
       fclose(fe);<br>       return 1;<br>    }<br>    // Bucle de copia:<br>    while((bytesLeidos = fread(buffer, 1, sizeof(buffer), fe)))<br>       fwrite(buffer, 1, bytesLeidos, fs);<br>    //Cerrar ficheros:<br>    fclose(fe);<br>
    fclose(fs);<br>    return 0;<br>}</font></div>
<div><font size="1" face="Courier New"></font> </div>
<div>Quisiera utilizar un parametro del llamado del programa como el tamaño de buffer, y así evitarme volver a compilar el programa cada vez que el tanaño de la traza sea diferente al extrar un dato de otro archivo.</div>

<div> </div>
<div>Saludos desde Villahermosa, Tabasco, Mexico, America, Tierra.</div>
<div> </div>
<div>Jose Luis</div>