Bueeenas! Tengo que hacer un programa, que al iniciarlo le tengo que pasarle varios argumentos. El primero, el nombre del archivo, y los demas serían strings (nº indefinido) que copiaremos a dicho archivo. Para conseguir esto, he escrito lo siguiente:
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <math.h>
void Print2File(char *filename, char *cadena){
FILE *f = NULL;
f = fopen(filename, "a");
fprintf(f, "%s\n", cadena);
fclose(f);
}
int main(int argc, char *argv[]){
int i;
if(argc<3){
perror("No has introducido suficientes argumentos");
exit(1);
}
else{
for(i=1;i<argc;i++){
Print2File(argv[0],argv[i]);
}
}
return 0;
}
Lo ejecuto de la siguiente manera (no se si está bien): ./mcp fichero.txt, cadena1, cadena2, cadena3 pero me devuelve una violación del segmento.
¿Una ayudita please? .
Salu2 y gracias por adelantado.