si certo...allora...io ho ad esempio le funzioni rd_choice_ptr e rd_txt che in pratica leggono dei dati in un file binario e li inseriscono in una struttura creata a questo scopo:
codice:
int rd_choice_ptr(FILE *fp,int entrn,struct entry tbl[])
{
int i;
for (i=0;i<=entrn;i++)
{
if (fseek(fp,tbl[i].offset,0))
return -1;
for(int n=0;n<tbl[i].txtdata.choicen;n++)
{
printf("%#x ",tbl[i].txtdata.txtptr[n]=rd_ptr(fp,ftell(fp)));
if (fseek(fp,4,1))
return -1;
}
printf("\n");
}
return (i-1);
}
nella funzione si vede una chiamata a rd_ptr, è un'altra funzione che si occupa di leggere dei dati dal file aperto...
codice:
_Bool rd_txt(FILE *fp,int entrn,struct entry tbl[])
{
int i,n,l;
for (i=0;i<=entrn;i++)
{
for (n=0;n<tbl[i].txtdata.choicen;n++)
{
if(fseek(fp,tbl[i].txtdata.txtptr[n],0))
return false;
for(l=0;l<50;l++)
{
if((tbl[i].txtdata.hextxt[n][l]=fgetc(fp))==0xFF)
break;
}
}
if(n<tbl[i].txtdata.choicen)
return(false);
}
if (i-1<entrn)
return(false);
return(true);
}
la struttura invece è così formata:
codice:
typedef long int offset;
typedef unsigned char byte;
struct txt
{
offset txtptr[10];
byte hextxt [10][30];
char asciitxt [10][30];
byte choicen;
};
struct entry
{
offset offset;
struct txt txtdata;
};
il mio dubbio era...teoricamente è più corretto unire le due funzioni, chiamare la prima dalla seconda o lasciarle così come sono??