el código es:
Código:
se que es un error por overflow del buffer que supongo lo dará por algun array mal definido pero no se porqué sólo me da si pasa a if(argc==3)int main(int argc, char **argv){ FILE *fp; char contenidoLinea[509]=""; int i=0; char ch; char ruta[50]="/usr/include/"; if (argc==2) if((fp=fopen(*++argv, "r"))==NULL){ fprintf(stderr, "No se ha podido abrir el archivo %s\n", *argv); return 0; }else while((ch=fgetc(fp))!=EOF){ if(ch!='\n'){ contenidoLinea[i]=ch; i++; }else{ contenidoLinea[i]='\0'; ProcesarArchivo(contenidoLinea, ruta); i=0; } } else if(argc==3) printf("lokesea"); else{ printf("Uso: preprocesar [-I <directorio>][<archivo>]\n"); exit(1); } fclose(fp); return 0; }
Saludos