PDA

Visualizza la versione completa : C acquisizione sequenza dati.


dk_giuse89
20-07-2010, 18:12
Salve,

Ho un problema sull'acquisizione dati, non so se è meglio usare una scanf 0 fgets.
La stringa ha la seguente forma O:Siii:ggg:hh in cui:
0 -> è un carattere E o U.
S -> altro carattere F o M.
iii -> rappresenta un numero intero.
ggg -> rappresenta un altro intero
hh -> rappresenta un interero.

Esempio -> E:M123:1:7

Ora una scanf("%s:%s%d:%d:%d"...variabili) non funziona, poichè credo che la seconda %s penso interpreti di acquisire tutto il resto come stringa.

La soluzione protrebbe essere l'uso di una fgtes, divido la stringa ogni volta che incotro : ( e fin li ci siamo), ma poi come acquisisco M123 in due variabili separate??

dk_giuse89
20-07-2010, 19:24
Ho risolto. SI PUO CHIUDERE.

Dalla manpage della scanf, è anche possibile specificare la dimensione dell'argomento da catturare.

Nel mio caso ho risolto cosi fscanf(fin1,"%1s:%1s%d:%d:%d",mOP,mS,&mid,&mday,&mh).

%Ns -> N specifica la lunghezza del all'argomento da catturare.

Loading