When one sees code like ... long test = 0x01020304; if ((char *)&test == "\0x01\0x02\0x03\0x04") return s; it is a fair indication that the rest of it isn't going to be worth bothering about ... kre