FILE *f_idx;
EMUFS_IDX reg;
char name_f_idx[255];
- long actual, final, cant, i, tam, a;
+ long actual, final, cant, i, tam;
strcpy(name_f_idx,emu->nombre);
strcat(name_f_idx, EMUFS_IDX_EXT);
cant = (final-actual)/sizeof(EMUFS_IDX);
/*apunto al siguiente del que quiero borrar*/
/*leo todos los que quedan*/
- for(i=0; i<cant-1; i++) {
+ for(i=0; i<cant; i++) {
final = actual + sizeof(EMUFS_IDX);
fseek(f_idx, final, SEEK_SET);
fread(®, sizeof(EMUFS_IDX), 1, f_idx);
}
return id;
}
-
fp = emufs_crear("articulos", T3, atoi(argv[1]), 100);
n1 = fp->grabar_registro(fp, a, 100, &err);
-
n2 = fp->grabar_registro(fp, c, 100, &err);
-
n3 = fp->grabar_registro(fp, d, 100, &err);
n4 = fp->grabar_registro(fp, e, 100, &err);
n5 = fp->grabar_registro(fp, f, 100, &err);
ver_archivo_FS(fp);
- fp->borrar_registro(fp, n3);
- printf("borre el registro de id = %lu\n",n3);
- b_ptr = fp->leer_registro(fp, n2, ®_size, &err);
+ if ( fp->borrar_registro(fp, n3) == -1) printf("la cague %d\n",n3);
+ if ( fp->borrar_registro(fp, n5) == -1) printf("la cague %d\n",n5);
+ if ( fp->borrar_registro(fp, n7) == -1) printf("la cague %d\n",n7);
+
+ b_ptr = fp->leer_registro(fp, n4, ®_size, &err);
printf("Recuperado : %s\n", b_ptr);