Ma dov'è il problema? Non ho capito cosa vuoi sapere..hai tutti gli elementi che ti servono
Potresti approcciare il problema in una maniera simile
codice:
typedef struct
{
char header[2];
char A [2];
//eccetera
} LaStringa;
LaStringa tutte_le_stringhe[MAX_STRINGHE];
Dopodichè ti leggi la stringa carattere per carattere (ti ricordo che un carattere ascii misura un byte) e salvi i valori nella struttura dati, es
codice:
strncpy(tutte_le_stringhe[i].header,"&&",2);
strncpy(tutte_le_stringhe[i].A,il_valore_che_hai_letto,2);
//...
Infine, per ottenere la dimensione del campo DATA, se ho capito bene il protocollo, ti basterà una semplice sottrazione tra la lunghezza totale della stringa (campo A) meno una costante, che sarebbe la somma di tutti gli altri campi di lunghezza nota a priori