- val = 0xABCDEF01; /* endianess magic number */
- int_ptr = (int *) buf;
- *int_ptr = val;
- char_ptr = (char *) &val;
- for (i=0; i<sizeof(int); i++) {
- char_ptr[i] = buf[i];
- }
- printf("Value %x\n", val);
- return 0;
+ magic = 0xABCD; /* endianess magic number */
+ ptr = (char *) &magic;
+ test = (ptr[1]<<8) + (ptr[0]&0xFF); /* build value byte by byte */
+ return (magic == test); /* if the same is little endian */