-uint16_t read_uint16_bigendian(FILE * file) {
-// Read uint16 from file in big-endian order.
- const uint16_t nchar = UCHAR_MAX + 1;
- unsigned char a = fgetc(file);
- unsigned char b = fgetc(file);
- return (a * nchar) + b; }
-
-void write_uint16_bigendian(uint16_t x, FILE * file) {
-// Write uint16 to file in beg-endian order.
- const uint16_t nchar = UCHAR_MAX + 1;
- unsigned char a = x / nchar;
- unsigned char b = x % nchar;
- fputc(a, file);
- fputc(b, file); }
+extern uint16_t read_uint16_bigendian( FILE * file )
+{
+ uint16_t x;
+ x = (uint16_t) fgetc(file) << 8 ;
+ x = x + (uint16_t) fgetc(file) ;
+ return x;
+}