Files
simgear/simgear/io/lowtest.cxx
T

47 lines
1.1 KiB
C++

#include <simgear/compiler.h>
#include STL_IOSTREAM
#include "lowlevel.hxx"
static const int sgEndianTest = 1;
#define sgIsLittleEndian (*((char *) &sgEndianTest ) != 0)
#define sgIsBigEndian (*((char *) &sgEndianTest ) == 0)
SG_USING_STD(cout);
SG_USING_STD(endl);
int main() {
cout << "This machine is ";
if ( sgIsLittleEndian ) {
cout << "little ";
} else {
cout << "big ";
}
cout << "endian" << endl;
cout << "sizeof(short) = " << sizeof(short) << endl;
short s = 1111;
cout << "short s = " << s << endl;
sgEndianSwap((uint16_t *)&s);
cout << "short s = " << s << endl;
sgEndianSwap((uint16_t *)&s);
cout << "short s = " << s << endl;
int i = 1111111;
cout << "int i = " << i << endl;
sgEndianSwap((uint32_t *)&i);
cout << "int i = " << i << endl;
sgEndianSwap((uint32_t *)&i);
cout << "int i = " << i << endl;
double x = 1111111111;
cout << "double x = " << x << endl;
sgEndianSwap((uint64_t *)&x);
cout << "double x = " << x << endl;
sgEndianSwap((uint64_t *)&x);
cout << "double x = " << x << endl;
}