2011年4月15日 星期五

如何測試你的平台是big endian 或 little endian

* little endian versus big endian */ 

 /*
  * add: z z+1 z+2 z+3
  * mem: 0D 0C 0B 0A //big endian
  * mem: 0A 0B 0C 0D //little endian
  * V = 0x0D0C0B0A
  */
 

 #include <stdio.h> 
 #include <stdlib.h> 
 int  main( void ) 
 { 
     int  V = 0x0D0C0B0A; 
     char  c = *( char  *)(&V)
     
     if  (c == 0x0A || c == 0x0D) { 
         if  (c == 0x0A) 
             printf( "little endian machine" )
         else 
             printf( "big endian machine" )
     } else 
         printf( "test error" )
     putchar( '\n' )
     exit(0)
}   

沒有留言:

張貼留言

How to repair and clone disk with ddrescue

  ddrescue  is a tool that can be used to repair and clone disks on a  Linux system . This includes hard drives, partitions, DVD discs, flas...