nanog mailing list archives
Re: interger to I P address
From: Robert Kisteleki <robert () ripe net>
Date: Wed, 27 Aug 2008 19:07:21 +0200
Colin Alston wrote:
On 2008/08/27 05:22 PM Dave Israel wrote:Normally, I don't participate in this sort of thing, but I'm a sucker for a "there's more than one way to do it" challenge.Aww come on, C gets way more "fun" than that ;) #define _u8 unsigned char #define _u32 unsigned long int main(void) { _u32 ipn = 1089055123; _u8 ipa[3]; _u8 oct = 0; for (oct=0; oct <4; oct++){ ipa[oct] = (char)( (ipn & (0xFF000000 >> (8*oct))) >> (8*(3-oct)) ); } printf("%d.%d.%d.%d\n", ipa[0], ipa[1], ipa[2], ipa[3]); return 0; }
Actually, who needs loops for that? #include <stdio.h> int main() { unsigned i = 1089055123; printf("%d.%d.%d.%d\n", (unsigned char)(((char*)&i)[3]), (unsigned char)(((char*)&i)[2]), (unsigned char)(((char*)&i)[1]), (unsigned char)(((char*)&i)[0]) ); return 0; } Robert
Current thread:
- Re: interger to I P address, (continued)
- Re: interger to I P address Colin Alston (Aug 27)
- RE: interger to I P address Matlock, Kenneth L (Aug 27)
- Re: interger to I P address Iljitsch van Beijnum (Aug 27)
- Re: interger to I P address Stephane Bortzmeyer (Aug 27)
- RE: interger to I P address Matlock, Kenneth L (Aug 27)
- RE: interger to I P address Robert D. Scott (Aug 27)
- Re: interger to I P address Colin Alston (Aug 27)
- Re: interger to I P address Shadow (Aug 27)
- Re: interger to I P address Dave Israel (Aug 27)
- Re: interger to I P address Colin Alston (Aug 27)
- Re: interger to I P address Robert Kisteleki (Aug 27)
- Re: interger to I P address Colin Alston (Aug 27)
- Re: interger to I P address Owen DeLong (Aug 27)
- Re: interger to I P address Scott Doty (Aug 27)
- Re: interger to I P address David Champion (Aug 27)
- Re: interger to I P address Andree Toonk (Aug 27)
- Re: interger to I P address Brian Epstein (Aug 27)
- Re: interger to I P address Michael Holstein (Aug 27)
- Re: interger to I P address Izaac (Aug 27)
- Re: interger to I P address Peter Dambier (Aug 27)