void swap_short_2(short *tni2) /* 2 byte signed integers */ { *tni2=(((*tni2>>8)&0xff) | ((*tni2&0xff)<<8)); } void swap_u_short_2(unsigned short *tni2) /* 2 byte unsigned integers */ { *tni2=(((*tni2>>8)&0xff) | ((*tni2&0xff)<<8)); } void swap_int_4(int *tni4) /* 4 byte signed integers */ { *tni4=(((*tni4>>24)&0xff) | ((*tni4&0xff)<<24) | ((*tni4>>8)&0xff00) | ((*tni4&0xff00)<<8)); } void swap_u_int_4(unsigned int *tni4) /* 4 byte unsigned integers */ { *tni4=(((*tni4>>24)&0xff) | ((*tni4&0xff)<<24) | ((*tni4>>8)&0xff00) | ((*tni4&0xff00)<<8)); } void swap_long_4(long *tni4) /* 4 byte signed long integers */ { *tni4=(((*tni4>>24)&0xff) | ((*tni4&0xff)<<24) | ((*tni4>>8)&0xff00) | ((*tni4&0xff00)<<8)); } void swap_u_long_4(unsigned long *tni4) /* 4 byte unsigned long integers */ { *tni4=(((*tni4>>24)&0xff) | ((*tni4&0xff)<<24) | ((*tni4>>8)&0xff00) | ((*tni4&0xff00)<<8)); } void swap_float_4(float *tnf4) /* 4 byte floating point numbers */ { int *tni4=(int *)tnf4; *tni4=(((*tni4>>24)&0xff) | ((*tni4&0xff)<<24) | ((*tni4>>8)&0xff00) | ((*tni4&0xff00)<<8)); } void swap_double_8(double *tndd8) /* 8 byte double numbers */ { char *tnd8=(char *)tndd8; char tnc; tnc=*tnd8; *tnd8=*(tnd8+7); *(tnd8+7)=tnc; tnc=*(tnd8+1); *(tnd8+1)=*(tnd8+6); *(tnd8+6)=tnc; tnc=*(tnd8+2); *(tnd8+2)=*(tnd8+5); *(tnd8+5)=tnc; tnc=*(tnd8+3); *(tnd8+3)=*(tnd8+4); *(tnd8+4)=tnc; }