uint32_t....
글쓴이: leolo / 작성시간: 목, 2003/05/08 - 1:56오후
H file
struct ip{
uint32_t first;
uint32_t second;
} __attribute__ ((packed));
extern struct ip ipbf;
C file
struct ip ipbf;
...
memcpy(&ipbf, buf, sizeof(struct ip));
printf("%02x\n", ntohl(ipbf.first);
위 코드의 결과는 d2754101로 나옵니다..
여기서.
d2는 210
75는 117
41은 65
01은 1로 나오게 하고 싶습니다..
어떻게 출력을 하면 될런지 알고 싶습니다.
결과적으로 uint32_t형으로 선언된 IP의 주소를
각각 정수형으로 출력하고 싶습니다..
아래에서, ???????에 어떻게 넣어주면 될런지..
printf("%d\n", ?????????);
Forums:


생각해봐도.. 이 방법 뿐이군요.. 다른 방법이 있는지..??/
생각해봐도.. 이 방법 뿐이군요.. 다른 방법이 있는지..??
ip = ntohl(ipbf.first); printf("%d\n", (ip & 0xff000000 ) >> 24); printf("%d\n", (ip & 0x00ff0000 ) >> 16); printf("%d\n", (ip & 0x0000ff00 ) >> 8); printf("%d\n", (ip & 0x000000ff ));실력이 있으면 삶이 편하다... 영차 영차...
inet_ntoa 를 쓰시죠?단 주의할 것은, thread saf
inet_ntoa 를 쓰시죠?
단 주의할 것은, thread safty와 함수호출에서 한 라인에서 연속적으로 호출하지 말 것입니다.
---
http://coolengineer.com
댓글 달기