Re: read() in C

From: Martin Preuss <martin_at_aqbanking.de>
Date: Fri, 26 Mar 2010 19:48:25 +0100

Moin,

On Freitag 26 M„rz 2010, Claudia Neumann wrote:
[...]
> unsigned char frage[3];
> setze, kommt die Fehlermeldung mit 4 Bytes nicht vollst„ndig an und ich
> muss nochmal ein weiteres read() mit 1 Byte nachholen.
[...]

Kannst Du denn nach 3 Bytes nicht schon sehen, ob Du noch ein 4. nachlesen
muesstest? Wenn ja, wuerde ich einfach die Laenge von "frage" auf 4 setzen und
3 Bytes lesen. Wenn ich dann sehe, dass die 3 Bytes einen Fehler anzeigen (was
vermutlich ein nicht so haeufiger Fall ist), wuerde ich das 4. Byte nachlesen.

Ob sich mehr Aufwand lohnt, haengt natuerlich davon ab, wie wahrscheinlich ein
Fehler ist, aber gemessen an der moeglichen Uebertragungsgeschwindigkeit eines
Kartenlesers wuerde ich da gar nicht mehr machen als das vorgeschlagene.

Gruss
Martin

-- 
"Things are only impossible until they're not"
Martin Preuss - http://www2.aquamaniac.de/
AqBanking - http://www.aqbanking.de/
LibChipcard - http://www.libchipcard.de/
Received on Fri Mar 26 2010 - 19:48:25 CET

This archive was generated by hypermail 2.2.0 : Sun Apr 11 2010 - 18:57:07 CEST