示例#1
0
/* HTS_fwrite_little_endian: fwrite with byteswap */
size_t HTS_fwrite_little_endian(const void *buf, size_t size, size_t n, FILE * fp)
{
#ifdef WORDS_BIGENDIAN
   HTS_byte_swap(buf, size, n * size);
#endif                          /* WORDS_BIGENDIAN */
   return fwrite(buf, size, n, fp);
}
示例#2
0
/* HTS_fread_big_endian: fread with byteswap */
int HTS_fread_big_endian(void *p, const int size, const int num, HTS_File * fp)
{
   const int block = HTS_fread(p, size, num, fp);

   if(is_machine_little_endian())
     HTS_byte_swap(p, size, block);

   return block;
}
示例#3
0
文件: HTS_misc.c 项目: vsooda/cppmary
/* HTS_fread_little_endian: fread with byteswap */
size_t HTS_fread_little_endian(void *buf, size_t size, size_t n, HTS_File *fp) {
    size_t block = HTS_fread(buf, size, n, fp);

#ifdef WORDS_BIGENDIAN
    HTS_byte_swap(buf, size, block);
#endif                          /* WORDS_BIGENDIAN */

    return block;
}
/* HTS_fwrite_little_endian: fwrite with byteswap */
int HTS_fwrite_little_endian(void *p, const int size, const int num, FILE * fp)
{
   const int block = num * size;

#ifdef WORDS_BIGENDIAN
   HTS_byte_swap(p, size, block);
#endif                          /* WORDS_BIGENDIAN */
   fwrite(p, size, num, fp);

   return block;
}
/* HTS_fread_big_endian: fread with byteswap */
int HTS_fread_big_endian(void *p, const int size, const int num, FILE * fp)
{
   const int block = fread(p, size, num, fp);

#ifndef WORDS_BIGENDIAN
   HTS_byte_swap(p, size, block);
#endif                          /* WORDS_LITTLEENDIAN */
                         /* WORDS_BIGENDIAN */

//   return block;
//#ifdef WORDS_LITTLEENDIAN
//   HTS_byte_swap(p, size, block);
//#endif                          /* WORDS_LITTLEENDIAN */

   return block;
}