hola amigos, es muy claro lo de archivos directos mucha gracias, mi duda es la sigueinte, como puedo listar los archios directos he trabajado con FEOF para saber el finde l archivo pero mi profesor no me acepta eso diceq ue meclo archivos secuenciales con directos este es:
do{
dir_fisica=id*sizeof(carro); // Calculo de la dir. fisica
fseek(archivo,dir_fisica,SEEK_SET); //Posicionar el apuntador del archivo
fscanf(archivo,"%d",&carro.id);
gotoxy(17,7);
cprintf(">> CODIGO: %d",id);
printf("\n\n\n\n\r<<< Oprima ENTER para el siguiente registro >>>");
getch();
id++;
}while(!feof(archivo));
el cuento es como los puedo listar sin FEOF
.
LO OTRO ES ESTO:char *valnum(){
int car=0;
char ch;
char vcar[30];
do
{
ch=getch();
if((ch>=48)&&(ch<=57)||(ch==8)||(ch==13)||(ch==0x53))
{
if((ch==13)&&(car>0))break;
if(ch!=13){
vcar[car]=ch;
vcar[car+1]='\0';
printf("%c",ch);
car++;
}
}
}while((car<7));
return(vcar);
}
LAS FAMOSAS VALIDACIONES
QUISIERA SABER POR QUE ESTO :
char *valnum() Y NO ESTO char valnum()
CON LA FUNCION strcpy PASO LO INGRESADO A LA FUNCION.
CUAL ES ES L ASICCI DEL RE TORNO DECARRO YA QUE SI ME EQUIVOCO NO PUEDO CORREGUIR EJEMPLO: INGRESO 15 PERO QUIERO BORRAR EL 5 POR 3 PARA QUE EL DATO QUE INTRESO SE 13 ? EL CUENTO ES QUE SI ME PUEDO REGRESAR PERO NO ME CAMBIA EL NUMERO QUE CORRIJO
esperO sus ayudas gracias.
un amigo